Eth Docker supports running an SSV node, together with a consensus client and execution client of choice.
Get Eth Docker
- Clone this tool
git clone https://github.com/eth-educators/eth-docker.git ssv-node && cd ssv-node
- Install docker, unless you already have it
- Install Docker Desktop and allocate 16 GiB of RAM and around 2TB of storage to it
- Install pre-requisites via homebrew
brew install coreutils newt bash
Setup an SSV Node
./ethd config, choose SSV Node, choose your preferred consensus and execution clients, and
rapid sync for the consensus client. Choose Grafana for visibility.
The config script will create a config file, password and encrypted node key in
Start everything with
You can watch logs with
./ethd logs -f ssv-node, which will also give you the public key of your node.
Back up the contents of
./ssv-config! If these are lost, you cannot recreate your node installation as registered
Right after startup, the ssv-node will fail because it cannot get to
http://consensus:5052. This is normal! It will resolve once the consensus client has started and is listening on the REST API port. You can use
./ethd logs -f consensusto see it do that.
By default, the SSV node uses ports TCP 13,001 and UDP 12,001 for its P2P network with other nodes. These ports need to be reachable from the Internet.
If you need to change the ports, you can do so by changing the
SSV_P2P_PORT_UDP variables in
.env, and changing the corresponding values in
Grafana dashboards are included.
Please see the secure proxy docs if you'd like to run Grafana on a secured https port, rather than insecure 3000.
SSV writes debug logs into its docker volume. By default, these can be found in the
sudo bash gets you a root shell that has access.
When there is a new version of your execution client, consensus client or of the SSV node, just run
ssv-node directory, which will pull fresh images. Then when you are ready, run
./ethd up to start using
the new version(s).