version: '3.1' # get the latest version tag from https://raw.githubusercontent.com/fuseio/fuse-network/master/Version # DOCKER_IMAGE_NM_CLIENT services: fuse-mainnet-nethermind-archive-health: depends_on: - fuse-mainnet-nethermind-archive build: context: ./check-health/ dockerfile: Dockerfile environment: - RPC_URL=http://fuse-mainnet-nethermind-archive:8545 - REF_URL=https://fuse-pokt.nodies.app # optional - CHECK_INTERVAL=30 # in seconds volumes: - .:/repo:ro - fuse-mainnet-nethermind-archive-health:/health:rw networks: - chains fuse-mainnet-nethermind-archive: image: fusenet/node:nethermind-1.28.0-v6.0.3 healthcheck: test: ["CMD", "sh", "-c", "while read -r status; do [ \"$$status\" = \"online\" -o \"$$status\" = \"lagging\" ] && exit 0; done < /health/status; exit 1"] interval: 30s timeout: 1s retries: 1 expose: - "3041" - "8545" - "8546" ports: - "3041:3041/tcp" - "3041:3041/udp" volumes: - fuse-mainnet-nethermind-archive-keystore:/nethermind/keystore - fuse-mainnet-nethermind-archive-logs:/nethermind/logs - ${FUSE_MAINNET_NETHERMIND_ARCHIVE__DB_DATA:-fuse-mainnet-nethermind-archive-db}:/nethermind/nethermind_db - fuse-mainnet-nethermind-archive-health:/health:ro - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro environment: - NETHERMIND_CONFIG=fuse - NETHERMIND_JSONRPCCONFIG_ENABLED=true - NETHERMIND_JSONRPCCONFIG_ENABLEDMODULES=[Eth,Subscribe,TxPool,Web3,Net,Parity,Health,Rpc,Debug,Admin] - NETHERMIND_JSONRPCCONFIG_HOST=0.0.0.0 - NETHERMIND_METRICSCONFIG_EXPOSEPORT=9091 - NETHERMIND_NETWORKCONFIG_P2PPORT=3041 - NETHERMIND_NETWORKCONFIG_DISCOVERYPORT=3041 - NETHERMIND_NETWORKCONFIG_MAXACTIVEPEERS=250 - NETHERMIND_JSONRPCCONFIG_PORT=8545 - NETHERMIND_JSONRPCCONFIG_WEBSOCKETSPORT=8545 - NETHERMIND_SYNCCONFIG_FASTSYNC=true - NETHERMIND_SYNCCONFIG_SNAPSYNC=false - NETHERMIND_SYNCCONFIG_FASTBLOCKS=true - NETHERMIND_SYNCCONFIG_DOWNLOADBODIESINFASTSYNC=true - NETHERMIND_SYNCCONFIG_DOWNLOADRECEIPTSINFASTSYNC=true - NETHERMIND_SYNCCONFIG_USEGETHLIMITSINFASTBLOCKS=false - NETHERMIND_PRUNINGCONFIG_MODE=None networks: - chains restart: unless-stopped command: --Init.WebSocketsEnabled true labels: - "traefik.enable=true" - "traefik.http.middlewares.fuse-mainnet-nethermind-archive-stripprefix.stripprefix.prefixes=/fuse-mainnet-nethermind-archive" - "traefik.http.services.fuse-mainnet-nethermind-archive.loadbalancer.server.port=8545" - "traefik.http.routers.fuse-mainnet-nethermind-archive.entrypoints=websecure" - "traefik.http.routers.fuse-mainnet-nethermind-archive.tls.certresolver=myresolver" - "traefik.http.routers.fuse-mainnet-nethermind-archive.rule=Host(`$DOMAIN`) && PathPrefix(`/fuse-mainnet-nethermind-archive`)" - "traefik.http.routers.fuse-mainnet-nethermind-archive.middlewares=fuse-mainnet-nethermind-archive-stripprefix, ipwhitelist" - "prometheus-scrape.enabled=true" - "prometheus-scrape.port=3000" - "prometheus-scrape.job_name=fuse-mainnet-nethermind-archive" volumes: fuse-mainnet-nethermind-archive-keystore: fuse-mainnet-nethermind-archive-logs: fuse-mainnet-nethermind-archive-db: fuse-mainnet-nethermind-archive-health: