diff --git a/op-bob-mainnet-archive.yml b/op-bob-mainnet-archive.yml new file mode 100644 index 00000000..e208f4f0 --- /dev/null +++ b/op-bob-mainnet-archive.yml @@ -0,0 +1,112 @@ +version: '3.1' + +services: + op-bob-mainnet-archive: # this is Optimism's geth client + #image: stakesquid/op-bob-mainnet:v0.1 + build: + context: ./op + expose: + - 8545 # RPC / Websocket + - 3673 # P2P TCP (currently unused) + - 3673/udp # P2P UDP (currently unused) + - 6060 # metrics + ports: + - "3673:3673" + - "3673:3673/udp" + command: [ "sh", "./geth-entrypoint" ] + restart: always + stop_grace_period: 3m + volumes: + - bob-mainnet-archive:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_GENESIS_FILE_PATH=/app/mainnet/bob/genesis.json" + - "GETH_ROLLUP_SEQUENCERHTTP=https://rpc-bob-mainnet-0.t.conduit.xyz" + - "GETH_RPC_GASCAP=600000000" + - "GETH_SYNCMODE=full" + - "GETH_GCMODE=archive" + - "GETH_NODISCOVER=true" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=pebble" + - "IP=${IP}" + - "P2P_PORT=3673" + - "WS_PORT=8545" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "HOST_IP=${IP}" + - "GETH_OVERRIDE_CANYON=1704992401" + - "GETH_OVERRIDE_DELTA=1708560000" + - "GETH_OVERRIDE_ECOTONE=1710374401" + - "GETH_OVERRIDE_FJORD=1720627201" + - "GETH_OVERRIDE_GRANITE=1736272801" + - "GETH_OVERRIDE_HOLOCENE=1736445601" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.bob-stripprefix.stripprefix.prefixes=/bob-mainnet-archive" + - "traefik.http.services.bob.loadbalancer.server.port=8545" + - "traefik.http.routers.bob.entrypoints=websecure" + - "traefik.http.routers.bob.tls.certresolver=myresolver" + - "traefik.http.routers.bob.rule=Host(`$DOMAIN`) && PathPrefix(`/bob-mainnet-archive`)" + - "traefik.http.routers.bob.middlewares=bob-stripprefix, ipwhitelist" + networks: + - chains + + + op-bob-mainnet-archive-node: + #image: stakesquid/op-bob-mainnet:v0.1 + build: + context: ./op + depends_on: + - op-bob-mainnet-archive + expose: + - 8545 # RPC + - 38812 # P2P TCP + - 38812/udp # P2P UDP + - 7300 # metrics + - 6060 # pprof + ports: + - "38812:38812" + - "38812:38812/udp" + command: [ "sh", "./op-node-entrypoint" ] + restart: always + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + #- "OP_NODE_NETWORK=bob-mainnet-0" + - "OP_NODE_L1_ETH_RPC=${BOB_MAINNET_L1_ENDPOINT}" + - "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://op-bob-mainnet-archive: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_BOOTNODES=enode://09acd29625beb40604b12b1c2194d6d5eb290aee03e0149675201ed717ce226c506671f46fcd440ce6f5e62dc4e059ffe88bcd931f2febcd22520ae7b9d00b5e@34.83.120.192: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_STATIC=/ip4/34.83.120.192/tcp/9222/p2p/16Uiu2HAkv5SVdeF4hFqJyCATwT87S3PZmutm8akrgwfcdFeqNxWw" + - "OP_NODE_P2P_AGENT=conduit" + - "OP_NODE_P2P_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=38812" + - "OP_NODE_P2P_LISTEN_UDP_PORT=38812" + - "OP_NODE_ROLLUP_CONFIG=/app/mainnet/bob/rollup.json" + - "OP_NODE_RPC_ADDR=0.0.0.0" + - "OP_NODE_P2P_ADVERTISE_IP=${IP}" + - "OP_NODE_RPC_PORT=8545" + - "OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log" + - "OP_NODE_VERIFIER_L1_CONFS=4" + - "OP_NODE_L1_RPC_MAX_BATCH_SIZE=${BOB_MAINNET_L1_BATCH_SIZE:-20}" + - "OP_NODE_L1_RPC_RATE_LIMIT=${BOB_MAINNET_L1_RATE_LIMIT:-30}" + - "OP_NODE_L1_RPC_KIND=${BOB_MAINNET_L1_ENDPOINT_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${BOB_MAINNET_L1_ENDPOINT_TRUST:-false}" + - "OP_NODE_L1_BEACON=${BOB_MAINNET_L1_BEACON_URL}" + - "OP_NODE_L1_BEACON_ARCHIVER=${BOB_MAINNET_L1_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_CANYON=1704992401" + - "OP_NODE_OVERRIDE_DELTA=1708560000" + - "OP_NODE_OVERRIDE_ECOTONE=1710374401" + - "OP_NODE_OVERRIDE_FJORD=1720627201" + - "OP_NODE_OVERRIDE_GRANITE=1736272801" + - "OP_NODE_OVERRIDE_HOLOCENE=1736445601" + networks: + - chains + +volumes: + bob-mainnet-archive: diff --git a/reference-rpc-endpoint.json b/reference-rpc-endpoint.json index 4be3071d..85a065ba 100644 --- a/reference-rpc-endpoint.json +++ b/reference-rpc-endpoint.json @@ -523,7 +523,8 @@ "bob": { "id": 60808, "urls": ["https://rpc-bob-mainnet-0.t.conduit.xyz"], - "default": ["op-bob-mainnet"] + "default": ["op-bob-mainnet"], + "archive": ["op-bob-mainnet-archive"] }, "mode": { "id": 34443,