xmr.sh/README.md
2022-09-19 10:37:49 -07:00

2.3 KiB

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 to run additional helpers
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