Skip to content

A simple and straightforward Dockerized monerod built from source and exposing standard ports.

License

Notifications You must be signed in to change notification settings

sethforprivacy/simple-monerod-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Monerod Docker

A simple and straightforward Dockerized monerod built from source and exposing standard ports.

Actions

Weekly Update Rebuild
Latest Dockerfile build on push

Docker

Docker Pulls
Docker Image Size (tag)
Docker Image Version (latest by date)

Tags

I will always release the latest Monero version under the latest tag as well as the version number tag (i.e. v0.18.0.0).

latest: The latest tagged version of Monero from https://github.com/monero-project/monero/tags, built on an Alpine base image
vx.xx.x.x: The version corresponding with the tagged version from https://github.com/monero-project/monero/tags, built on an Alpine base image

Recommended usage

I am using this container for my guide on running a Monero node:

https://sethforprivacy.com/guides/run-a-monero-node/

The ways I would generally recommend running this container for a personal or public Monero node are below.

monerod Docker w/o public RPC:

sudo docker run -d --restart unless-stopped --name="monerod" -v bitmonero:/home/monero/.bitmonero ghcr.io/sethforprivacy/simple-monerod:latest --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-port=18089 --no-igd --no-zmq --enable-dns-blocklist

monerod Docker w/ public RPC:

sudo docker run -d --restart unless-stopped --name="monerod" -v bitmonero:/home/monero/.bitmonero ghcr.io/sethforprivacy/simple-monerod:latest  --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-port=18089 --public-node --no-igd --no-zmq --enable-dns-blocklist

monerod Docker w/o public RPC (pruned):

sudo docker run -d --restart unless-stopped --name="monerod" -v bitmonero:/home/monero/.bitmonero ghcr.io/sethforprivacy/simple-monerod:latest  --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-port=18089 --no-igd --no-zmq --enable-dns-blocklist --prune-blockchain

monerod Docker w/ public RPC (pruned):

sudo docker run -d --restart unless-stopped --name="monerod" -v bitmonero:/home/monero/.bitmonero ghcr.io/sethforprivacy/simple-monerod:latest  --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-port=18089 --public-node --no-igd --no-zmq --enable-dns-blocklist --prune-blockchain

Running as a different user

In situations where you need the daemon to be run as a different user, I have added fixuid to enable that. Much of the work for this was taken from docker-monero, and enables you to specify a new user/group in your docker run or docker-compose.yml file to run as a different user.

  • In docker run commands, you can specify the user like this: --user 1000:1000
  • In docker-compose.yml files, you can specify the user like this: user: ${FIXUID:-1000}:${FIXGID:-1000}

A great use-case for this is running with the daemon's files stored on an NFS mount, or running monerod on a Synology NAS.

Copyrights

Code from this repository is released under MIT license. Monero License, @leonardochaia License

Credits

The base for the Dockerfile was pulled from:

https://github.com/leonardochaia/docker-monerod

The migration to Alpine from a Ubuntu 20.04 base image was based largely on previous commits from:

https://github.com/cornfeedhobo/docker-monero