Docker images are available from Docker Hub .
We have version-specific Docker tags (
statusim/nimbus-eth2:amd64-v1.2.3) and a tag for the latest image (
These images are simply the contents of release tarballs inside a
debian:bullseye-slim image, running under a user imaginatively named
user, with UID:GID of 1000:1000.
The unpacked archive is in
/home/user/nimbus-eth2 which is also the default WORKDIR. The default ENTRYPOINT is the binary itself:
Before running Nimbus via docker, you need to prepare a data directory and mount it in docker.
It is recommended that you mount the directory at
/home/user/nimbus-eth2/build/data and pass
--data-dir=build/data/shared_mainnet_0 to all
The wrapper script outlined below will set the data directory automatically.
If you wish, you can choose to use a wrapper script instead:
Our preferred setup is using
docker-compose. You can use one of our example configuration files as a base for your own custom configuration:
The rather voluminous logging is done on
stdout, so you might want to change the system-wide Docker logging defaults (which dumps everything in
/var/lib/docker/containers/CONTAINER_ID/CONTAINER_ID-json.log) to something like
syslog. We recommend using a log rotation system with appropriate intervals for logs of this size.