diff --git a/boba-eth-mainnet-erigon-archive-trace.yml b/boba-eth-mainnet-erigon-archive-trace.yml new file mode 100644 index 00000000..bdafa8fc --- /dev/null +++ b/boba-eth-mainnet-erigon-archive-trace.yml @@ -0,0 +1,89 @@ +version: '3.4' + +# The erigon db can be downloaded from +# https://boba-db.s3.us-east-2.amazonaws.com/mainnet/boba-mainnet-erigon-db-1149019.tgz +# and extracted to the DATA_DIR + +# The jwt-secret.txt file should be a random string of32 characters and should be kept secret. + +# The p2p-node-key.txt is the private key used for the node to identify itself. + +# The discovery and peerstore directories are used to store the peerstore and discovery data. + +# boba is part of the superchain registry and knows it's overrides + +services: + boba-eth-erigon: + image: us-docker.pkg.dev/boba-392114/bobanetwork-tools-artifacts/images/op-erigon:${BOBAETH_ERIGON_VERSION:-v1.2.11} + user: root + command: | + --datadir=/db + --port=29910 + --nat=stun + --chain=boba-mainnet + --http.addr=0.0.0.0 + --http.port=9545 + --http.compression=true + --ws.port=9545 + --ws.compression=true + --ws + --http.corsdomain=* + --http.vhosts=* + --authrpc.addr=0.0.0.0 + --authrpc.port=8551 + --authrpc.vhosts=* + --authrpc.jwtsecret=/jwtsecret + --http.api=eth,debug,net,engine,web3 + --txpool.gossip.disable=true + --rollup.sequencerhttp=https://mainnet.boba.network + --db.size.limit=8TB + ports: + - "29910:29910" + - "29910:29910/udp" + expose: + - 9545 + - 8551 + volumes: + - .jwtsecret:/jwtsecret + - ${BOBA_ETH_MAINNET_ERIGON_ARCHIVE_TRACE:-boba-eth-mainnet-erigon-archive-trace}:/db + networks: + - chains + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.boba-eth-mainnet-erigon-archive-trace-stripprefix.stripprefix.prefixes=/boba-eth-erigon" + - "traefik.http.services.boba-eth-mainnet-erigon-archive-trace.loadbalancer.server.port=9545" + - "${NO_SSL:-traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.entrypoints=websecure}" + - "${NO_SSL:-traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.tls.certresolver=myresolver}" + - "${NO_SSL:-traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.rule=Host(`$DOMAIN`) && PathPrefix(`/boba-eth-erigon`)}" + - "${NO_SSL:+traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.rule=PathPrefix(`/boba-eth-erigon`)}" + - "traefik.http.routers.boba-eth-mainnet-erigon-archive-trace.middlewares=boba-eth-mainnet-erigon-archive-trace-stripprefix, ipwhitelist" + + boba-eth-erigon-node: + depends_on: + - op-boba + image: us-docker.pkg.dev/boba-392114/bobanetwork-tools-artifacts/images/op-node:${BOBAETH_NODE_VERSION:-v1.6.15} + command: > + op-node + --l2=http://boba-eth-erigon:8551 + --l2.jwt-secret=/jwtsecret + --network=boba-mainnet + --rpc.addr=0.0.0.0 + --rpc.port=8545 + environment: + - "OP_NODE_P2P_LISTEN_TCP_PORT=45202" + - "OP_NODE_L1_RPC_KIND=${BOBA_ETH_L1_ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${BOBA_ETH_L1_ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${BOBA_ETH_L1_ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${BOBA_ETH_L1_ETHEREUM_MAINNET_BEACON_ARCHIVER}" + - "OP_NODE_L1_ETH_RPC=${BOBA_ETH_L1_ETHEREUM_MAINNET_EXECUTION}" + ports: + - "45202:45202" + - "45202:45202/udp" + networks: + - chains + volumes: + - .jwtsecret:/jwtsecret + restart: always + +volumes: + boba-eth-mainnet-erigon-archive-trace: