diff --git a/op-blast-sepolia.yml b/op-blast-sepolia.yml new file mode 100644 index 00000000..2255fae5 --- /dev/null +++ b/op-blast-sepolia.yml @@ -0,0 +1,86 @@ +version: '3.1' + +services: + + op-blast-sepolia: + image: blastio/blast-geth:sepolia + pull_policy: always + volumes: + - blast-sepolia:/data + - ./blast-io:/config:rw + - .jwtsecret:/jwtsecret + environment: + - "GETH_ROLLUP_SEQUENCERHTTP=https://sequencer.s2.testblast.io" + - "GETH_GCMODE=full" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=pebble" + - "GETH_NODISCOVER=true" + - "GETH_DATADIR=/data" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_PORT=9545" + - "GETH_HTTP_VHOSTS=*" + - "GETH_HTTP_CORSDOMAIN=*" + - "GETH_HTTP_API=web3,debug,eth,txpool,net,engine" + - "GETH_WS_PORT=9545" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_WS=true" + - "GETH_AUTHRPC_VHOSTS=*" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_LIGHT_MAXPEERS=0" + - "GETH_MAXPEERS=0" + - "GETH_OVERRIDE_CANYON=0" + - "GETH_OVERRIDE_ECOTONE=1713999600" + expose: + - 9545 + restart: always + stop_grace_period: 30s + entrypoint: /bin/sh + command: -c "[ ! -d /data/geth ] && /usr/local/bin/geth init /config/sepolia/genesis.json || /usr/local/bin/geth --rollup.disabletxpoolgossip=true" + networks: + - chains + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.blast-stripprefix.stripprefix.prefixes=/blast-sepolia" + - "traefik.http.services.blast.loadbalancer.server.port=9545" + - "traefik.http.routers.blast.entrypoints=websecure" + - "traefik.http.routers.blast.tls.certresolver=myresolver" + - "traefik.http.routers.blast.rule=Host(`$DOMAIN`) && PathPrefix(`/blast-sepolia`)" + - "traefik.http.routers.blast.middlewares=blast-stripprefix, ipwhitelist" + + op-blast-sepolia-node: + image: blastio/blast-optimism:sepolia + pull_policy: always + volumes: + - ./blast-io:/config + - .jwtsecret:/jwtsecret + ports: + - "12018:12018" + - "12018:12018/udp" + environment: + - "OP_NODE_P2P_BOOTNODES=enr:-J-4QM3GLUFfKMSJQuP1UvuKQe8DyovE7Eaiit0l6By4zjTodkR4V8NWXJxNmlg8t8rP-Q-wp3jVmeAOml8cjMj__ROGAYznzb_HgmlkgnY0gmlwhA-cZ_eHb3BzdGFja4X947FQAIlzZWNwMjU2azGhAiuDqvB-AsVSRmnnWr6OHfjgY8YfNclFy9p02flKzXnOg3RjcIJ2YYN1ZHCCdmE,enr:-J-4QDCVpByqQ8nFqCS9aHicqwUfXgzFDslvpEyYz19lvkHLIdtcIGp2d4q5dxHdjRNTO6HXCsnIKxUeuZSPcEbyVQCGAYznzz0RgmlkgnY0gmlwhANiQfuHb3BzdGFja4X947FQAIlzZWNwMjU2azGhAy3AtF2Jh_aPdOohg506Hjmtx-fQ1AKmu71C7PfkWAw9g3RjcIJ2YYN1ZHCCdmE" + - "OP_NODE_L1_RPC_RATE_LIMIT=0" + - "OP_NODE_L1_RPC_MAX_BATCH_SIZE=20" + - "OP_NODE_L1_RPC_KIND=${BLAST_SEPOLIA_L1_ENDPOINT_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${BLAST_SEPOLIA_L1_ENDPOINT_TRUST:-false}" + - "OP_NODE_L1_ETH_RPC=${BLAST_SEPOLIA_L1_ENDPOINT}" + - "OP_NODE_L1_BEACON=${BLAST_SEPOLIA_L1_BEACON}" + - "OP_NODE_L1_BEACON_ARCHIVER=${BLAST_SEPOLIA_L1_BEACON_ARCHIVER}" + - "OP_NODE_L1_TRUST_RPC=true" + - "OP_NODE_L2_ENGINE_RPC=http://op-blast-sepolia:8551" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + #- "OP_NODE_L2_SKIP_SYNC_START_CHECK=true" + - "OP_NODE_P2P_LISTEN_TCP_PORT=12018" + - "OP_NODE_ROLLUP_CONFIG=/config/sepolia/rollup.json" + command: > + op-node + depends_on: + - op-blast-sepolia + networks: + - chains + +volumes: + blast-sepolia: