You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
docker-monero-node/docker-compose.yaml

81 lines
2.8 KiB
YAML

version: '3'
volumes:
grafana:
prometheus:
services:
prometheus:
image: prom/prometheus:v2.18.0
container_name: prometheus
restart: unless-stopped
command:
- --config.file=/etc/prometheus/prometheus.yml
- --storage.tsdb.path=/prometheus
- --web.console.libraries=/usr/share/prometheus/console_libraries
- --web.console.templates=/usr/share/prometheus/consoles
- --web.enable-admin-api
volumes:
- prometheus:/prometheus
- ./files/prometheus:/etc/prometheus
ports:
- 127.0.0.1:9090:9090
grafana:
image: grafana/grafana:6.5.0
container_name: grafana
restart: unless-stopped
ports:
- 127.0.0.1:3000:3000
environment:
HOSTNAME: grafana
GF_SERVER_ROOT_URL: ${GRAFANA_URL}
GF_ANALYTICS_REPORTING_ENABLED: "false"
GF_ANALYTICS_CHECK_FOR_UPDATES: "false"
# GF_USERS_ALLOW_SIGN_UP: "false"
# GF_USERS_ALLOW_ORG_CREATE: "false"
# GF_AUTH_ANONYMOUS_ENABLED: "true"
# GF_AUTH_BASIC_ENABLED: "false"
# GF_AUTH_DISABLE_LOGIN_FORM: "true"
volumes:
- ./files/grafana/dashboards.yaml:/etc/grafana/provisioning/dashboards/default.yaml:ro
- ./files/grafana/prometheus.yaml:/etc/grafana/provisioning/datasources/prometheus.yaml:ro
- ./files/grafana/daemon_metrics.json:/var/lib/grafana/dashboards/daemon_metrics.json:ro
- grafana:/var/lib/grafana
monero-exporter:
container_name: monero-exporter
build:
context: dockerfiles
dockerfile: monerod_exporter
restart: unless-stopped
environment:
DAEMON_HOST: http://monerod:18083
PORT: 8080
ports:
- 127.0.0.1:8080:8080
process-exporter:
container_name: process-exporter
image: ncabatoff/process-exporter:0.7.5
restart: unless-stopped
volumes:
- /proc:/host/proc
- ./files/prometheus/process-exporter:/config/process-exporter:ro
privileged: true
ports:
- 127.0.0.1:9256:9256
command:
process-exporter -procfs /host/proc -config.path /config/process-exporter
monerod:
container_name: monerod
build:
context: dockerfiles
dockerfile: monero_nocompile
restart: unless-stopped
volumes:
- ${DATA_DIR:-./data}:/data
ports:
- ${P2P_PORT:-18080}:18080 # p2p
- ${RESTRICTED_PORT:-18081}:18081 # restricted rpc
- 127.0.0.1:${ZMQ_PORT:-18082}:18082 # zmq
- 127.0.0.1:${UNRESTRICTED_PORT:-18083}:18083 # unrestricted rpc
command:
monerod --data-dir=/data --p2p-bind-ip=0.0.0.0 --p2p-bind-port=18080 --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-port=18081 --zmq-rpc-bind-ip=0.0.0.0 --zmq-rpc-bind-port=18082 --rpc-bind-ip=0.0.0.0 --rpc-bind-port=18083 --non-interactive --confirm-external-bind --public-node --log-level=0 --enable-dns-blocklist