A Docker container running Zcash as a service via the Zebra full node and exposing the RPC API.
Breaking change (v26.07.0): the mainline now ships Zebra instead of
zcashd. Switching from azcashd-based image requires a full resync — the on-disk state is not compatible. The legacyzcashdvariant is kept for maintenance on thezcashdbranch.
- Docker, see e.g. https://docs.docker.com/engine/install/
- Docker Compose: https://docs.docker.com/compose/install/
Modify docker/zebrad-config.toml according to your environment. The
default configuration runs on Mainnet and exposes the RPC server on
port 8632. Adjust the [network], [rpc] and [state] sections as
needed; the full set of options is documented in the
Zebra config reference.
Client data is persisted on the host machine using a Docker volume.
In the default setting the local directory ./data is mapped to
/opt/graphsense/data inside the container (used by Zebra for both the
network cache and the state cache). To override these settings a Docker
Compose override file can be used, e.g.
> cat docker-compose.override.yml
services:
zcash-client:
volumes:
- /var/data/graphsense/clients/zec:/opt/graphsense/data
Building the docker container (the Zebra version is specified in the
Dockerfile):
docker-compose build
Starting the container (in detached mode):
docker-compose up -d
Showing log information:
docker-compose logs