-
Notifications
You must be signed in to change notification settings - Fork 217
Docker jormungandr
Docker builds of cardano-wallet
are available on DockerHub.
To get the latest release of cardano-wallet-itn
, run:
docker pull inputoutput/cardano-wallet:jormungandr
To run basic CLI commands, use:
docker run --rm inputoutput/cardano-wallet:jormungandr --help
See Wallet Command Line Interface for full documentation of the CLI.
Running a cardano-wallet
server requires setting up a state directory with a jormungandr config file.
This example uses the itn_rewards_v1 testnet.
-
Set up a state directory with the network config on the Docker host.
mkdir $HOME/state-docker wget -P $HOME/state-docker https://hydra.iohk.io/job/Cardano/iohk-nix/jormungandr-deployment/latest/download/1/itn_rewards_v1-config.yaml
-
Run the
cardano-wallet
server andjormungandr
:docker run \ --publish 127.0.0.1:8090:8090 \ --volume $HOME/state-docker:/data \ --env TMPDIR=/data \ --rm \ inputoutput/cardano-wallet \ launch \ --listen-address 0.0.0.0 \ --state-dir /data \ --genesis-block-hash 8e4d2a343f3dcf9330ad9035b3e8d168e6728904262f2c434a4f8f934ec7b676 \ -- --config /data/itn_rewards_v1-config.yaml
Explanation of the arguments:
-
--publish 127.0.0.1:8090:8090
- exposes the API server port from the container to the Docker host. -
--volume $HOME/state-docker:/data
- mounts the~/state-docker
directory on the Docker host to/data
inside the container. -
--env TMPDIR=/data
- work around a temp directory issue (#1262). Alternatively, you may mount an additional volume on your own temporary directory with--volume /tmp:/tmp
. -
--listen-address 0.0.0.0
- ensures that the API server binds to the Docker network interface, so that the server can be accessed from outside of the container. -
--state-dir /data
- use the data volume for chain and wallet databases.
-
-
Wait for the log message
Wallet backend server listening on 0.0.0.0:8090
to be shown (it may take 30-60 minutes for jormungandr to bootstrap).Then in another shell, on the Docker host, run:
curl http://localhost:8090/v2/network/information
The cardano-wallet API server should return its status as JSON.
The following tags are pushed to DockerHub.
Tag | Network node backend | Version |
---|---|---|
inputoutput/cardano-wallet:jormungandr |
Jörmungandr | Latest GitHub release |
inputoutput/cardano-wallet:dev-master-jormungandr |
Jörmungandr | Latest revision of master branch |
inputoutput/cardano-wallet:2020.1.7-jormungandr |
Jörmungandr | v2020-01-07 (for example) |
inputoutput/cardano-wallet:e902913750f763ac3dcb37f57fa35154db2934eb-jormungandr |
Jörmungandr | A certain revision of the master branch (e902913 for example). |
Ensure that you have Nix installed and the IOHK binary cache enabled (instructions).
Then run this command from the cardano-wallet
git repo:
docker load -i $(nix-build -A dockerImage.jormungandr --no-out-link)
If you have no local changes, the build should be downloaded from the IOHK binary cache then loaded into your local Docker image storage.
The default entrypoint of the image is
/bin/start-cardano-wallet-jormungandr
. If you need to run a shell
inside the Docker image, use the bash shell as the entrypoint:
docker run --rm -it --entrypoint bash inputoutput/cardano-wallet:jormungandr