version: '3.1' services: avalanche-fullnode: image: avaplatform/avalanchego:v1.12.1 stop_grace_period: 3m ulimits: nofile: 1048576 expose: - "9650" - "18507" ports: - "18507:18507/tcp" - "18507:18507/udp" volumes: - avalanche-fullnode:/root/.avalanchego - ./avalanche/configs/chains/C/fullnode-config.json:/root/.avalanchego/configs/chains/C/config.json networks: - chains command: "/avalanchego/build/avalanchego --http-host= --http-allowed-hosts=* --staking-port=18507 --public-ip=$IP" restart: unless-stopped avalanche-proxy: restart: unless-stopped image: nginx depends_on: - avalanche-fullnode expose: - 80 environment: PROXY_HOST: avalanche-fullnode RPC_PORT: 9650 RPC_PATH: /ext/bc/C/rpc WS_PORT: 9650 WS_PATH: /ext/bc/C/ws networks: - chains volumes: - ./nginx-proxy:/etc/nginx/templates labels: - "traefik.enable=true" - "traefik.http.middlewares.avalanche-fullnode-stripprefix.stripprefix.prefixes=/avalanche-fullnode" - "traefik.http.services.avalanche-fullnode.loadbalancer.server.port=80" - "traefik.http.routers.avalanche-fullnode.entrypoints=websecure" - "traefik.http.routers.avalanche-fullnode.tls.certresolver=myresolver" - "traefik.http.routers.avalanche-fullnode.rule=Host(`$DOMAIN`) && PathPrefix(`/avalanche-fullnode`)" - "traefik.http.routers.avalanche-fullnode.middlewares=avalanche-fullnode-stripprefix, ipwhitelist" volumes: avalanche-fullnode: