1

In this documentation it says:

The client is also a basic wallet and after the activation above you will notice that the directory .tezos-client has been populated with 3 files public_key_hashs, public_keys and secret_keys.

But when running in docker, it presumably uses some other directory inside the docker container which is not obviously accessible.

How can I access my keys, or create a wallet using the docker image?

2 Answers 2

2

The command tezos-client show address <name> -S will show you the public and secret key of the user name. For instance, assuming that the dockerized tezos-client is accessible through the ./babylonnet.sh, you can run:

./babylonnet.sh client show address <name> -S

However, you can also find the directory that corresponds to ~/.tezos-client used by docker. The dockerized version uses two docker volumes to store data:

$ sudo docker volume ls
DRIVER              VOLUME NAME
local               babylonnet_client_data
local               babylonnet_node_data

We inspect the first one:

$ sudo docker volume inspect babylonnet_client_data
[
    {
        ...,
        "Mountpoint": "/var/lib/docker/volumes/babylonnet_client_data/_data",
        ...
    }
]

We can access the mountpoint directly (Note: this required super-user privilegies in my setup) to find the desired keys:

$ sudo ls /var/lib/docker/volumes/babylonnet_client_data/_data/ 
config  public_key_hashs  public_keys  secret_keys
1

I was able to make this work using the following commands:

./babylonnet.sh client gen keys MY_WALLET_NAME
./babylonnet.sh client show address MY_WALLET_NAME -S

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.