From ca692fbdd966341684bd38fe9e7c9da0b0456c49 Mon Sep 17 00:00:00 2001 From: squidbear <379651+czarly@users.noreply.github.com> Date: Sun, 30 Mar 2025 13:43:40 +0200 Subject: [PATCH] new ways --- ...t-mainnet-op-geth-archive-leveldb-hash.yml | 102 ++++++++++++++++++ ...uit-mainnet-op-geth-pruned-pebble-path.yml | 102 ++++++++++++++++++ ...t-testnet-op-geth-archive-leveldb-hash.yml | 102 ++++++++++++++++++ ...uit-testnet-op-geth-pruned-pebble-path.yml | 102 ++++++++++++++++++ 4 files changed, 408 insertions(+) create mode 100644 zircuit/op-geth/zircuit-mainnet-op-geth-archive-leveldb-hash.yml create mode 100644 zircuit/op-geth/zircuit-mainnet-op-geth-pruned-pebble-path.yml create mode 100644 zircuit/op-geth/zircuit-testnet-op-geth-archive-leveldb-hash.yml create mode 100644 zircuit/op-geth/zircuit-testnet-op-geth-pruned-pebble-path.yml diff --git a/zircuit/op-geth/zircuit-mainnet-op-geth-archive-leveldb-hash.yml b/zircuit/op-geth/zircuit-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..03d707cf --- /dev/null +++ b/zircuit/op-geth/zircuit-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,102 @@ + + +services: + zircuit-mainnet-archive: + image: zircuit1/l2-geth:e81568966f2a42a57b1347fb1dffdd5257dde73a + volumes: + - "zircuit-mainnet-op-geth-archive-leveldb-hash:/data" + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_config:/config + environment: + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=10463" + - "GETH_DATADIR=/data" + ports: + - "10463:10463" + - "10463:10463/udp" + env_file: + - /config/env + entrypoint: ["/bin/sh", "-c", "[ ! -d /data/geth ] && geth init /config/genesis.json; exec geth \"$@\""] + command: + - --http + - --http.corsdomain=* + - --http.vhosts=* + - --http.addr=0.0.0.0 + - --http.port=8545 + - --http.api=eth,web3,debug,txpool,admin,net + - --ws + - --ws.addr=0.0.0.0 + - --ws.port=8545 + - --ws.origins=* + - --ws.api=eth,net,debug,web3 + - --rpc.txfeecap=10 + - --authrpc.addr=0.0.0.0 + - --authrpc.port=8551 + - --authrpc.vhosts=* + - --authrpc.jwtsecret=/jwtsecret + - --circuit-capacity-check=false + - --txpool.globalqueue=1024 + - --config=/config/gethconfig.toml + - --rollup.sequencerhttp=${ZIRCUIT_SEQUENCER_HTTP} + - --rollup.disabletxpoolgossip=true + + networks: + - chains + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.zircuit-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/zircuit-mainnet-archive" + - "traefik.http.services.zircuit-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=80" + - "traefik.http.routers.zircuit-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.zircuit-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.zircuit-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/zircuit-mainnet-archive`)" + - "traefik.http.routers.zircuit-mainnet-op-geth-archive-leveldb-hash.middlewares=zircuit-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + + + zircuit-mainnet-archive-node: + depends_on: + - zircuit-mainnet-archive + image: zircuit1/op-node:e81568966f2a42a57b1347fb1dffdd5257dde73a + ports: + - "15463:15463" + - "15463:15463/udp" + volumes: + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_config:/config + networks: + - chains + env_file: + - /config/env + environment: + OP_NODE_L1_ETH_RPC: ${ETHEREUM_MAINNET_EXECUTION_RPC} + OP_NODE_L2_ENGINE_RPC: http://zircuit-mainnet-archive:8551 + OP_NODE_ROLLUP_CONFIG: /config/rollup.json + OP_NODE_RPC_ADDR: "0.0.0.0" + OP_NODE_RPC_PORT: 9545 + OP_NODE_L1_RPC_KIND: "basic" + OP_NODE_L2_ENGINE_AUTH: /jwtsecret + OP_NODE_VERIFIER_L1_CONFS: 0 + OP_NODE_SEQUENCER_ENABLED: "false" + OP_NODE_SEQUENCER_STOPPED: "false" + OP_NODE_SEQUENCER_MAX_SAFE_LAG: 0 + OP_NODE_SEQUENCER_L1_CONFS: 0 + OP_NODE_L1_EPOCH_POLL_INTERVAL: 384s + OP_NODE_HEARTBEAT_ENABLED: "false" + OP_NODE_L1_BEACON: ${ETHEREUM_MAINNET_BEACON_REST} + OP_NODE_SYNCMODE: execution-layer + OP_NODE_P2P_LISTEN_IP: "0.0.0.0" + OP_NODE_P2P_LISTEN_TCP_PORT: 15463 + OP_NODE_P2P_LISTEN_UDP_PORT: 15463 + OP_NODE_P2P_PEER_SCORING: light + OP_NODE_P2P_PEER_BANNING: "true" + OP_NODE_P2P_STATIC: ${ZIRCUIT_MAINNET_STATIC_PEERS} + OP_NODE_P2P_ADVERTISE_IP: ${IP} + OP_NODE_LOG_LEVEL: info + OP_NODE_LOG_FORMAT: json + OP_NODE_LOG_COLOR: "false" + +volumes: + zircuit-mainnet-op-geth-archive-leveldb-hash: diff --git a/zircuit/op-geth/zircuit-mainnet-op-geth-pruned-pebble-path.yml b/zircuit/op-geth/zircuit-mainnet-op-geth-pruned-pebble-path.yml new file mode 100644 index 00000000..3b38dd7c --- /dev/null +++ b/zircuit/op-geth/zircuit-mainnet-op-geth-pruned-pebble-path.yml @@ -0,0 +1,102 @@ + + +services: + zircuit-mainnet: + image: zircuit1/l2-geth:e81568966f2a42a57b1347fb1dffdd5257dde73a + volumes: + - "zircuit-mainnet-op-geth-pruned-pebble-path:/data" + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_config:/config + environment: + - "GETH_GCMODE=full" + - "GETH_SYNCMODE=snap" + - "GETH_STATE_SCHEME=path" + - "GETH_DB_ENGINE=pebble" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=10359" + - "GETH_DATADIR=/data" + ports: + - "10359:10359" + - "10359:10359/udp" + env_file: + - /config/env + entrypoint: ["/bin/sh", "-c", "[ ! -d /data/geth ] && geth init /config/genesis.json; exec geth \"$@\""] + command: + - --http + - --http.corsdomain=* + - --http.vhosts=* + - --http.addr=0.0.0.0 + - --http.port=8545 + - --http.api=eth,web3,debug,txpool,admin,net + - --ws + - --ws.addr=0.0.0.0 + - --ws.port=8545 + - --ws.origins=* + - --ws.api=eth,net,debug,web3 + - --rpc.txfeecap=10 + - --authrpc.addr=0.0.0.0 + - --authrpc.port=8551 + - --authrpc.vhosts=* + - --authrpc.jwtsecret=/jwtsecret + - --circuit-capacity-check=false + - --txpool.globalqueue=1024 + - --config=/config/gethconfig.toml + - --rollup.sequencerhttp=${ZIRCUIT_SEQUENCER_HTTP} + - --rollup.disabletxpoolgossip=true + + networks: + - chains + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.zircuit-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/zircuit-mainnet" + - "traefik.http.services.zircuit-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=80" + - "traefik.http.routers.zircuit-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.zircuit-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.zircuit-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/zircuit-mainnet`)" + - "traefik.http.routers.zircuit-mainnet-op-geth-pruned-pebble-path.middlewares=zircuit-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" + + + zircuit-mainnet-node: + depends_on: + - zircuit-mainnet + image: zircuit1/op-node:e81568966f2a42a57b1347fb1dffdd5257dde73a + ports: + - "15359:15359" + - "15359:15359/udp" + volumes: + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_config:/config + networks: + - chains + env_file: + - /config/env + environment: + OP_NODE_L1_ETH_RPC: ${ETHEREUM_MAINNET_EXECUTION_RPC} + OP_NODE_L2_ENGINE_RPC: http://zircuit-mainnet:8551 + OP_NODE_ROLLUP_CONFIG: /config/rollup.json + OP_NODE_RPC_ADDR: "0.0.0.0" + OP_NODE_RPC_PORT: 9545 + OP_NODE_L1_RPC_KIND: "basic" + OP_NODE_L2_ENGINE_AUTH: /jwtsecret + OP_NODE_VERIFIER_L1_CONFS: 0 + OP_NODE_SEQUENCER_ENABLED: "false" + OP_NODE_SEQUENCER_STOPPED: "false" + OP_NODE_SEQUENCER_MAX_SAFE_LAG: 0 + OP_NODE_SEQUENCER_L1_CONFS: 0 + OP_NODE_L1_EPOCH_POLL_INTERVAL: 384s + OP_NODE_HEARTBEAT_ENABLED: "false" + OP_NODE_L1_BEACON: ${ETHEREUM_MAINNET_BEACON_REST} + OP_NODE_SYNCMODE: execution-layer + OP_NODE_P2P_LISTEN_IP: "0.0.0.0" + OP_NODE_P2P_LISTEN_TCP_PORT: 15359 + OP_NODE_P2P_LISTEN_UDP_PORT: 15359 + OP_NODE_P2P_PEER_SCORING: light + OP_NODE_P2P_PEER_BANNING: "true" + OP_NODE_P2P_STATIC: ${ZIRCUIT_MAINNET_STATIC_PEERS} + OP_NODE_P2P_ADVERTISE_IP: ${IP} + OP_NODE_LOG_LEVEL: info + OP_NODE_LOG_FORMAT: json + OP_NODE_LOG_COLOR: "false" + +volumes: + zircuit-mainnet-op-geth-pruned-pebble-path: diff --git a/zircuit/op-geth/zircuit-testnet-op-geth-archive-leveldb-hash.yml b/zircuit/op-geth/zircuit-testnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..70413df1 --- /dev/null +++ b/zircuit/op-geth/zircuit-testnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,102 @@ + + +services: + zircuit-testnet-archive: + image: zircuit1/l2-geth:e81568966f2a42a57b1347fb1dffdd5257dde73a + volumes: + - "zircuit-testnet-op-geth-archive-leveldb-hash:/data" + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_testnet_config:/config + environment: + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=10095" + - "GETH_DATADIR=/data" + ports: + - "10095:10095" + - "10095:10095/udp" + env_file: + - /config/env + entrypoint: ["/bin/sh", "-c", "[ ! -d /data/geth ] && geth init /config/genesis.json; exec geth \"$@\""] + command: + - --http + - --http.corsdomain=* + - --http.vhosts=* + - --http.addr=0.0.0.0 + - --http.port=8545 + - --http.api=eth,web3,debug,txpool,admin,net + - --ws + - --ws.addr=0.0.0.0 + - --ws.port=8545 + - --ws.origins=* + - --ws.api=eth,net,debug,web3 + - --rpc.txfeecap=10 + - --authrpc.addr=0.0.0.0 + - --authrpc.port=8551 + - --authrpc.vhosts=* + - --authrpc.jwtsecret=/jwtsecret + - --circuit-capacity-check=false + - --txpool.globalqueue=1024 + - --config=/config/gethconfig.toml + - --rollup.sequencerhttp=${ZIRCUIT_SEQUENCER_HTTP} + - --rollup.disabletxpoolgossip=true + + networks: + - chains + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.zircuit-testnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/zircuit-testnet-archive" + - "traefik.http.services.zircuit-testnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=80" + - "traefik.http.routers.zircuit-testnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.zircuit-testnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.zircuit-testnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/zircuit-testnet-archive`)" + - "traefik.http.routers.zircuit-testnet-op-geth-archive-leveldb-hash.middlewares=zircuit-testnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + + + zircuit-testnet-archive-node: + depends_on: + - zircuit-testnet-archive + image: zircuit1/op-node:e81568966f2a42a57b1347fb1dffdd5257dde73a + ports: + - "15095:15095" + - "15095:15095/udp" + volumes: + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_testnet_config:/config + networks: + - chains + env_file: + - /config/env + environment: + OP_NODE_L1_ETH_RPC: ${ETHEREUM_SEPOLIA_EXECUTION_RPC} + OP_NODE_L2_ENGINE_RPC: http://zircuit-testnet-archive:8551 + OP_NODE_ROLLUP_CONFIG: /config/rollup.json + OP_NODE_RPC_ADDR: "0.0.0.0" + OP_NODE_RPC_PORT: 9545 + OP_NODE_L1_RPC_KIND: "basic" + OP_NODE_L2_ENGINE_AUTH: /jwtsecret + OP_NODE_VERIFIER_L1_CONFS: 0 + OP_NODE_SEQUENCER_ENABLED: "false" + OP_NODE_SEQUENCER_STOPPED: "false" + OP_NODE_SEQUENCER_MAX_SAFE_LAG: 0 + OP_NODE_SEQUENCER_L1_CONFS: 0 + OP_NODE_L1_EPOCH_POLL_INTERVAL: 384s + OP_NODE_HEARTBEAT_ENABLED: "false" + OP_NODE_L1_BEACON: ${ETHEREUM_SEPOLIA_BEACON_REST} + OP_NODE_SYNCMODE: execution-layer + OP_NODE_P2P_LISTEN_IP: "0.0.0.0" + OP_NODE_P2P_LISTEN_TCP_PORT: 15095 + OP_NODE_P2P_LISTEN_UDP_PORT: 15095 + OP_NODE_P2P_PEER_SCORING: light + OP_NODE_P2P_PEER_BANNING: "true" + OP_NODE_P2P_STATIC: ${ZIRCUIT_MAINNET_STATIC_PEERS} + OP_NODE_P2P_ADVERTISE_IP: ${IP} + OP_NODE_LOG_LEVEL: info + OP_NODE_LOG_FORMAT: json + OP_NODE_LOG_COLOR: "false" + +volumes: + zircuit-testnet-op-geth-archive-leveldb-hash: diff --git a/zircuit/op-geth/zircuit-testnet-op-geth-pruned-pebble-path.yml b/zircuit/op-geth/zircuit-testnet-op-geth-pruned-pebble-path.yml new file mode 100644 index 00000000..8c87f93c --- /dev/null +++ b/zircuit/op-geth/zircuit-testnet-op-geth-pruned-pebble-path.yml @@ -0,0 +1,102 @@ + + +services: + zircuit-testnet: + image: zircuit1/l2-geth:e81568966f2a42a57b1347fb1dffdd5257dde73a + volumes: + - "zircuit-testnet-op-geth-pruned-pebble-path:/data" + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_testnet_config:/config + environment: + - "GETH_GCMODE=full" + - "GETH_SYNCMODE=snap" + - "GETH_STATE_SCHEME=path" + - "GETH_DB_ENGINE=pebble" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=10804" + - "GETH_DATADIR=/data" + ports: + - "10804:10804" + - "10804:10804/udp" + env_file: + - /config/env + entrypoint: ["/bin/sh", "-c", "[ ! -d /data/geth ] && geth init /config/genesis.json; exec geth \"$@\""] + command: + - --http + - --http.corsdomain=* + - --http.vhosts=* + - --http.addr=0.0.0.0 + - --http.port=8545 + - --http.api=eth,web3,debug,txpool,admin,net + - --ws + - --ws.addr=0.0.0.0 + - --ws.port=8545 + - --ws.origins=* + - --ws.api=eth,net,debug,web3 + - --rpc.txfeecap=10 + - --authrpc.addr=0.0.0.0 + - --authrpc.port=8551 + - --authrpc.vhosts=* + - --authrpc.jwtsecret=/jwtsecret + - --circuit-capacity-check=false + - --txpool.globalqueue=1024 + - --config=/config/gethconfig.toml + - --rollup.sequencerhttp=${ZIRCUIT_SEQUENCER_HTTP} + - --rollup.disabletxpoolgossip=true + + networks: + - chains + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.zircuit-testnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/zircuit-testnet" + - "traefik.http.services.zircuit-testnet-op-geth-pruned-pebble-path.loadbalancer.server.port=80" + - "traefik.http.routers.zircuit-testnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.zircuit-testnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.zircuit-testnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/zircuit-testnet`)" + - "traefik.http.routers.zircuit-testnet-op-geth-pruned-pebble-path.middlewares=zircuit-testnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" + + + zircuit-testnet-node: + depends_on: + - zircuit-testnet + image: zircuit1/op-node:e81568966f2a42a57b1347fb1dffdd5257dde73a + ports: + - "15804:15804" + - "15804:15804/udp" + volumes: + - ".jwtsecret:/jwtsecret:ro" + - ./zircuit_testnet_config:/config + networks: + - chains + env_file: + - /config/env + environment: + OP_NODE_L1_ETH_RPC: ${ETHEREUM_SEPOLIA_EXECUTION_RPC} + OP_NODE_L2_ENGINE_RPC: http://zircuit-testnet:8551 + OP_NODE_ROLLUP_CONFIG: /config/rollup.json + OP_NODE_RPC_ADDR: "0.0.0.0" + OP_NODE_RPC_PORT: 9545 + OP_NODE_L1_RPC_KIND: "basic" + OP_NODE_L2_ENGINE_AUTH: /jwtsecret + OP_NODE_VERIFIER_L1_CONFS: 0 + OP_NODE_SEQUENCER_ENABLED: "false" + OP_NODE_SEQUENCER_STOPPED: "false" + OP_NODE_SEQUENCER_MAX_SAFE_LAG: 0 + OP_NODE_SEQUENCER_L1_CONFS: 0 + OP_NODE_L1_EPOCH_POLL_INTERVAL: 384s + OP_NODE_HEARTBEAT_ENABLED: "false" + OP_NODE_L1_BEACON: ${ETHEREUM_SEPOLIA_BEACON_REST} + OP_NODE_SYNCMODE: execution-layer + OP_NODE_P2P_LISTEN_IP: "0.0.0.0" + OP_NODE_P2P_LISTEN_TCP_PORT: 15804 + OP_NODE_P2P_LISTEN_UDP_PORT: 15804 + OP_NODE_P2P_PEER_SCORING: light + OP_NODE_P2P_PEER_BANNING: "true" + OP_NODE_P2P_STATIC: ${ZIRCUIT_MAINNET_STATIC_PEERS} + OP_NODE_P2P_ADVERTISE_IP: ${IP} + OP_NODE_LOG_LEVEL: info + OP_NODE_LOG_FORMAT: json + OP_NODE_LOG_COLOR: "false" + +volumes: + zircuit-testnet-op-geth-pruned-pebble-path: