Files
ethereum-rpc-docker/op-snaxchain-fullnode.yml
2025-01-24 10:03:20 +01:00

103 lines
4.5 KiB
YAML

version: '3.1'
services:
op-snaxchain-fullnode:
build:
context: ./op
dockerfile: Dockerfile
expose:
- 8545 # RPC / Websocket
- 55677 # P2P TCP (currently unused)
- 55677/udp # P2P UDP (currently unused)
- 6060 # metrics
ports:
- "55677:55677"
- "55677:55677/udp"
command: [ "sh", "./geth-entrypoint" ]
restart: always
stop_grace_period: 3m
volumes:
- snaxchain-fullnode:/data
- .jwtsecret:/jwtsecret
environment:
- "GETH_GENESIS_FILE_PATH=/app/mainnet/snaxchain/genesis.json"
- "GETH_ROLLUP_SEQUENCERHTTP=https://mainnet.snaxchain.io"
- "GETH_GCMODE=full"
#- "GETH_SYNCMODE=snap"
- "GETH_STATE_SCHEME=path"
- "GETH_DB_ENGINE=pebble"
- "GETH_DISCOVERY_PORT=55677"
- "GETH_DB_ENGINE=pebble"
- "P2P_PORT=55677"
- "WS_PORT=8545"
- "IP=${IP}"
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
- "GETH_NODISCOVER=true"
#- "GETH_OVERRIDE_CANYON=1704992401"
#- "GETH_OVERRIDE_DELTA=1708560000"
#- "GETH_OVERRIDE_ECOTONE=1710374401"
#- "GETH_OVERRIDE_FJORD=1720627201"
labels:
- "traefik.enable=true"
- "traefik.http.middlewares.snax-stripprefix.stripprefix.prefixes=/snax"
- "traefik.http.services.snax.loadbalancer.server.port=8545"
- "traefik.http.routers.snax.entrypoints=websecure"
- "traefik.http.routers.snax.tls.certresolver=myresolver"
- "traefik.http.routers.snax.rule=Host(`$DOMAIN`) && PathPrefix(`/snax`)"
- "traefik.http.routers.snax.middlewares=snax-stripprefix, ipwhitelist"
networks:
- chains
op-snaxchain-fullnode-node:
build:
context: ./op
depends_on:
- op-snaxchain-fullnode
expose:
- 8545 # RPC
- 6479 # P2P TCP
- 6479/udp # P2P UDP
- 7300 # metrics
- 6060 # pprof
ports:
- "6479:6479"
- "6479:6479/udp"
command: [ "sh", "./op-node-entrypoint" ]
restart: always
volumes:
- .jwtsecret:/jwtsecret
stop_grace_period: 30s
environment:
#- "OP_NODE_SYNCMODE=execution-layer"
- "OP_NODE_L1_ETH_RPC=${SNAXCHAIN_ETHEREUM_ENDPOINT}"
- "OP_NODE_L2_ENGINE_AUTH=/jwtsecret"
- "OP_NODE_L2_ENGINE_RPC=http://op-snaxchain-fullnode:8551"
- "OP_NODE_LOG_LEVEL=info"
- "OP_NODE_METRICS_ADDR=0.0.0.0"
- "OP_NODE_METRICS_ENABLED=true"
- "OP_NODE_METRICS_PORT=7300"
- "OP_NODE_P2P_STATIC=/ip4/34.145.38.86/tcp/9222/p2p/16Uiu2HAm1suCyNVL9yrFsYqQq26sKBgxfFV1NviL9RjQFgJJjhWF"
- "OP_NODE_P2P_BOOTNODES=enode://5fde2dbd30b05a51a6b4d132df0f18bb522c481c447d1a84b7b5cf13e543fe403c63511d8602f3c7dcfbf2020a7a7823ba6bb26125cf497f7a08f80ea5963496@34.145.38.86:9222?discport=30301,enode://d25ce99435982b04d60c4b41ba256b84b888626db7bee45a9419382300fbe907359ae5ef250346785bff8d3b9d07cd3e017a27e2ee3cfda3bcbb0ba762ac9674@bootnode.conduit.xyz:0?discport=30301,enode://2d4e7e9d48f4dd4efe9342706dd1b0024681bd4c3300d021f86fc75eab7865d4e0cbec6fbc883f011cfd6a57423e7e2f6e104baad2b744c3cafaec6bc7dc92c1@34.65.43.171:0?discport=30305,enode://9d7a3efefe442351217e73b3a593bcb8efffb55b4807699972145324eab5e6b382152f8d24f6301baebbfb5ecd4127bd3faab2842c04cd432bdf50ba092f6645@34.65.109.126:0?discport=30305"
- "OP_NODE_P2P_LISTEN_IP=0.0.0.0"
- "OP_NODE_P2P_LISTEN_TCP_PORT=6479"
- "OP_NODE_P2P_LISTEN_UDP_PORT=6479"
- "OP_NODE_P2P_ADVERTISE_IP=${IP}"
- "OP_NODE_ROLLUP_CONFIG=/app/mainnet/snaxchain/rollup.json"
- "OP_NODE_RPC_ADDR=0.0.0.0"
- "OP_NODE_RPC_PORT=8545"
- "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log"
- "OP_NODE_VERIFIER_L1_CONFS=4"
- "OP_NODE_L1_RPC_KIND=${SNAXCHAIN_ETHEREUM_ENDPOINT_KIND:-basic}"
- "OP_NODE_L1_TRUST_RPC=${SNAXCHAIN_ETHEREUM_ENDPOINT_TRUST:-false}"
- "OP_NODE_L1_BEACON=${SNAXCHAIN_ETHEREUM_ENDPOINT_BEACON}"
- "OP_NODE_L1_BEACON_ARCHIVER=${SNAXCHAIN_MAINNET_L1_BEACON_ARCHIVER}"
#- "OP_NODE_OVERRIDE_CANYON=1704992401"
#- "OP_NODE_OVERRIDE_DELTA=1708560000"
#- "OP_NODE_OVERRIDE_ECOTONE=1710374401"
#- "OP_NODE_OVERRIDE_FJORD=1720627201"
networks:
- chains
volumes:
snaxchain-fullnode: