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 exporter: container_name: 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 monerod: container_name: monerod build: context: dockerfiles dockerfile: monero_compile args: threads: ${THREADS:-1} 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