A Monero node installer in a single command
Find a file
2023-09-11 20:09:22 -07:00
config fix quantiles, bump versions 2022-06-01 11:15:42 +01:00
data zmq params, exec order 2022-06-09 09:41:14 +01:00
.gitignore keep modified files out of source control 2022-09-19 10:37:49 -07:00
docker-compose-example.yml add note about uncommenting 2022-09-19 10:42:00 -07:00
env-example reset defaults 2022-09-19 10:40:09 -07:00
install update install script to create default configs 2023-09-11 20:09:22 -07:00
LICENSE Initial commit 2022-05-25 16:30:59 +01:00
monero-lws-admin add monero-lws-admin wrapper command 2022-06-09 09:41:14 +01:00
README.md clarifying 2022-09-19 10:42:20 -07:00
uninstall uninstall fixes 2022-06-06 22:37:45 +01:00

xmr.sh

xmr.sh script wizard sets up a new server running a monero node daemon with Docker compose, with your choice of SSL certificates for your domain, network selection, a Tor hidden service, Grafana dashboard and more.

Getting Started

The most important files are:

  • .env - where your configurations/secrets are kept
  • docker-compose.yml - where your Docker container options are defined

This repo provides example files for you to copy and modify to suit your deployment needs. To get started, simply copy those files and modify as needed.

# Update configurations/secrets/settings
cp env-example .env
vim .env

# Update Docker containers - uncomment services at the bottom to run additional helper services
cp docker-compose-example.yml docker-compose.yml
vim docker-compose.yml

Once those files are present, use docker-compose to launch your containers.

docker-compose up -d  # start and daemonize (background) all containers

docker-compose logs -f  # tail all logs

docker-compose logs -f monerod  # tail individual container logs (here monerod)

docker-compose down  # stop containers

Distribution support

Compatible and tested on:

  • Debian 11
  • Ubuntu Focal
  • Fedora 36

Other distributions with docker pre-installed would probably be compatible as well.

Demo

asciicast

FAQ

Check the wiki

ToDo

  • Add wizard for DNS domain selection.
  • Status and node info at finish.
  • Mainnet / Stagenet / Testnet selection
  • Pruning enabled
  • Clearnet TLS port selection
  • Uninstall script
  • Make tor service optional
  • Block explorer (disabled)
  • Grafana dashboard
  • arm64 support for all images
  • monerod-lws support (experimental)
  • Shellcheck via Github Actions
  • Documentation
  • monerod-proxy support for random node forwarding
  • i2p service
  • p2pool mining

Credits

@cirocosta for the metrics exporter and grafana dashboard.

@sethforprivacy for providing and maintaining Monero Docker images.

Donate XMR 🍕

86GwmtuKWtjJBWT8Srn4oqZHbP41k2kpG79xXKKgauJzCmZkFJ5ihwjVnRodVbVjAx64JeB7VyGbF6hEdwpcPcR7Go8x2YZ