A minimal Docker setup for running salviumd, ready for p2pool-salvium
A small, opinionated Docker setup that runs a Salvium full node from the official upstream binaries with sensible defaults. Pruned by default, runs as an unprivileged user, and the ZMQ pub socket is already wired for p2pool-salvium.
debian:trixie-slim.restart: unless-stopped).salvium.conf on the host.git clone https://gitlab.com/whiskyrelaxing-group/salvium-node-docker.git
cd salvium-node-docker
cp .env.example .env
docker compose up -d --build
Initial sync of a pruned mainnet node takes a few hours. Verify it's responding with:
curl -s http://127.0.0.1:19089/get_height
| Port | Purpose | Default binding | Public? |
|---|---|---|---|
19080 | P2P | 0.0.0.0 | Yes |
19081 | RPC (full) | 127.0.0.1 | No |
19083 | ZMQ RPC | 127.0.0.1 | No |
19084 | ZMQ pub (P2Pool) | 127.0.0.1 | No |
19089 | Restricted RPC | 127.0.0.1 | Yes, if opted in |
19082 is intentionally left free for salvium-wallet-rpc, which runs as a separate process on a trusted machine.
p2pool-salvium runs as a binary on the host (not in a container). Point it at:
RPC http://127.0.0.1:19081
ZMQ pub tcp://127.0.0.1:19084
If P2Pool is on a different LAN host, set RPC_PUBLISH_IP and ZMQ_PUBLISH_IP to 0.0.0.0 in .env. Never expose 19081 to the public internet.