From c72b36e523022975639b9bd35291e6b73751b802 Mon Sep 17 00:00:00 2001 From: squidbear <379651+czarly@users.noreply.github.com> Date: Sun, 23 Mar 2025 04:25:08 +0100 Subject: [PATCH] human readable --- base-sepolia.yml | 102 ------------------ hashkeychain-mainnet.yml | 1 + ink-mainnet.yml | 1 + ink-sepolia.yml | 1 + lisk-mainnet.yml | 1 + lisk-sepolia.yml | 1 + metal-mainnet.yml | 1 + metal-sepolia.yml | 1 + mode-mainnet.yml | 1 + mode-sepolia.yml | 1 + op-mainnet.yml | 1 + op-sepolia.yml | 1 + op/.dockerignore | 1 + ...e-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ase-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...e-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ase-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- ...b-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...bob-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...n-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ain-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...k-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ink-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...k-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ink-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- ...k-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...isk-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...k-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...isk-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- ...l-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...tal-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...l-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...tal-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- ...e-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ode-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...e-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ode-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- ...p-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ .../op-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...p-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ .../op-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- ...x-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...nax-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...l-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ell-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...n-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ain-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...n-sepolia-op-geth-archive-leveldb-hash.yml | 36 +++---- ...ain-sepolia-op-geth-pruned-pebble-path.yml | 99 +++++++++++++++++ ...n-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ain-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...n-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ain-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- ...a-mainnet-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ora-mainnet-op-geth-pruned-pebble-path.yml | 36 +++---- ...a-sepolia-op-geth-archive-leveldb-hash.yml | 99 +++++++++++++++++ ...ora-sepolia-op-geth-pruned-pebble-path.yml | 36 +++---- snax-mainnet.yml | 1 + swell-mainnet.yml | 1 + unichain-mainnet.yml | 1 + unichain-sepolia.yml | 1 + worldchain-mainnet.yml | 1 + worldchain-sepolia.yml | 1 + zora-mainnet.yml | 1 + zora-sepolia.yml | 1 + 65 files changed, 2594 insertions(+), 498 deletions(-) delete mode 100644 base-sepolia.yml create mode 120000 hashkeychain-mainnet.yml create mode 120000 ink-mainnet.yml create mode 120000 ink-sepolia.yml create mode 120000 lisk-mainnet.yml create mode 120000 lisk-sepolia.yml create mode 120000 metal-mainnet.yml create mode 120000 metal-sepolia.yml create mode 120000 mode-mainnet.yml create mode 120000 mode-sepolia.yml create mode 120000 op-mainnet.yml create mode 120000 op-sepolia.yml create mode 100644 op/.dockerignore create mode 100644 op/geth/base-mainnet-op-geth-archive-leveldb-hash.yml rename base-mainnet-op-geth-pruned-pebble-path.yml => op/geth/base-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/base-sepolia-op-geth-archive-leveldb-hash.yml rename base-sepolia-op-geth-pruned-pebble-path.yml => op/geth/base-sepolia-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/bob-mainnet-op-geth-archive-leveldb-hash.yml rename bob-mainnet-op-geth-pruned-pebble-path.yml => op/geth/bob-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/hashkeychain-mainnet-op-geth-archive-leveldb-hash.yml rename hashkeychain-mainnet-op-geth-pruned-pebble-path.yml => op/geth/hashkeychain-mainnet-op-geth-pruned-pebble-path.yml (65%) create mode 100644 op/geth/ink-mainnet-op-geth-archive-leveldb-hash.yml rename ink-mainnet-op-geth-pruned-pebble-path.yml => op/geth/ink-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/ink-sepolia-op-geth-archive-leveldb-hash.yml rename ink-sepolia-op-geth-pruned-pebble-path.yml => op/geth/ink-sepolia-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/lisk-mainnet-op-geth-archive-leveldb-hash.yml rename lisk-mainnet-op-geth-pruned-pebble-path.yml => op/geth/lisk-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/lisk-sepolia-op-geth-archive-leveldb-hash.yml rename lisk-sepolia-op-geth-pruned-pebble-path.yml => op/geth/lisk-sepolia-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/metal-mainnet-op-geth-archive-leveldb-hash.yml rename metal-mainnet-op-geth-pruned-pebble-path.yml => op/geth/metal-mainnet-op-geth-pruned-pebble-path.yml (66%) create mode 100644 op/geth/metal-sepolia-op-geth-archive-leveldb-hash.yml rename metal-sepolia-op-geth-pruned-pebble-path.yml => op/geth/metal-sepolia-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/mode-mainnet-op-geth-archive-leveldb-hash.yml rename mode-mainnet-op-geth-pruned-pebble-path.yml => op/geth/mode-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/mode-sepolia-op-geth-archive-leveldb-hash.yml rename mode-sepolia-op-geth-pruned-pebble-path.yml => op/geth/mode-sepolia-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/op-mainnet-op-geth-archive-leveldb-hash.yml rename op-mainnet-op-geth-pruned-pebble-path.yml => op/geth/op-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/op-sepolia-op-geth-archive-leveldb-hash.yml rename op-sepolia-op-geth-pruned-pebble-path.yml => op/geth/op-sepolia-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/snax-mainnet-op-geth-archive-leveldb-hash.yml rename snax-mainnet-op-geth-pruned-pebble-path.yml => op/geth/snax-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/swell-mainnet-op-geth-archive-leveldb-hash.yml rename swell-mainnet-op-geth-pruned-pebble-path.yml => op/geth/swell-mainnet-op-geth-pruned-pebble-path.yml (66%) create mode 100644 op/geth/unichain-mainnet-op-geth-archive-leveldb-hash.yml rename unichain-mainnet-op-geth-pruned-pebble-path.yml => op/geth/unichain-mainnet-op-geth-pruned-pebble-path.yml (66%) rename unichain-sepolia-op-geth-pruned-pebble-path.yml => op/geth/unichain-sepolia-op-geth-archive-leveldb-hash.yml (66%) create mode 100644 op/geth/unichain-sepolia-op-geth-pruned-pebble-path.yml create mode 100644 op/geth/worldchain-mainnet-op-geth-archive-leveldb-hash.yml rename worldchain-mainnet-op-geth-pruned-pebble-path.yml => op/geth/worldchain-mainnet-op-geth-pruned-pebble-path.yml (65%) create mode 100644 op/geth/worldchain-sepolia-op-geth-archive-leveldb-hash.yml rename worldchain-sepolia-op-geth-pruned-pebble-path.yml => op/geth/worldchain-sepolia-op-geth-pruned-pebble-path.yml (66%) create mode 100644 op/geth/zora-mainnet-op-geth-archive-leveldb-hash.yml rename zora-mainnet-op-geth-pruned-pebble-path.yml => op/geth/zora-mainnet-op-geth-pruned-pebble-path.yml (67%) create mode 100644 op/geth/zora-sepolia-op-geth-archive-leveldb-hash.yml rename zora-sepolia-op-geth-pruned-pebble-path.yml => op/geth/zora-sepolia-op-geth-pruned-pebble-path.yml (67%) create mode 120000 snax-mainnet.yml create mode 120000 swell-mainnet.yml create mode 120000 unichain-mainnet.yml create mode 120000 unichain-sepolia.yml create mode 120000 worldchain-mainnet.yml create mode 120000 worldchain-sepolia.yml create mode 120000 zora-mainnet.yml create mode 120000 zora-sepolia.yml diff --git a/base-sepolia.yml b/base-sepolia.yml deleted file mode 100644 index 3d061f15..00000000 --- a/base-sepolia.yml +++ /dev/null @@ -1,102 +0,0 @@ -version: '3.1' - -services: - base-sepolia: # this is Optimism's geth client - build: ./base - expose: - - 8545 # RPC / Websocket - - 30765 # P2P TCP (currently unused) - - 30765/udp # P2P UDP (currently unused) - - 6060 # metrics - - 855 - ports: - - "30765:30765" - - "30765:30765/udp" - #command: [ "sh", "./geth-entrypoint" ] - restart: always - stop_grace_period: 3m - entrypoint: ./geth - command: --datadir=/data --verbosity=3 --http --http.corsdomain=* --http.vhosts=* --http.addr=0.0.0.0 --http.port=8545 --http.api=web3,debug,eth,net,engine --authrpc.addr=0.0.0.0 --authrpc.port=8551 --authrpc.vhosts=* --authrpc.jwtsecret=/jwtsecret --ws --ws.addr=0.0.0.0 --ws.port=8545 --ws.origins=* --ws.api=debug,eth,net,engine --metrics --metrics.addr=0.0.0.0 --metrics.port=6060 --syncmode=snap --gcmode=full --state.scheme=path --db.engine=pebble --discovery.port=30765 --maxpeers=100 --op-network=base-sepolia --rollup.halt=major --rollup.sequencerhttp=https://sepolia-sequencer.base.org --port=30765 --nat=extip:${IP} --bootnodes="enode://548f715f3fc388a7c917ba644a2f16270f1ede48a5d88a4d14ea287cc916068363f3092e39936f1a3e7885198bef0e5af951f1d7b1041ce8ba4010917777e71f@18.210.176.114:30301,enode://6f10052847a966a725c9f4adf6716f9141155b99a0fb487fea3f51498f4c2a2cb8d534e680ee678f9447db85b93ff7c74562762c3714783a7233ac448603b25f@107.21.251.55:30301" - volumes: - - base-sepolia:/data - - .jwtsecret:/jwtsecret - environment: - - "OP_GETH_GENESIS_FILE_PATH=sepolia/genesis-l2.json" - - "OP_GETH_SEQUENCER_HTTP=https://sepolia-sequencer.base.org" - - "OP_GETH_GCMODE=full" - - "OP_GETH_SYNCMODE=snap" - - "GETH_SYNCMODE=snap" - - "GETH_BOOTNODES=enode://548f715f3fc388a7c917ba644a2f16270f1ede48a5d88a4d14ea287cc916068363f3092e39936f1a3e7885198bef0e5af951f1d7b1041ce8ba4010917777e71f@18.210.176.114:30301,enode://6f10052847a966a725c9f4adf6716f9141155b99a0fb487fea3f51498f4c2a2cb8d534e680ee678f9447db85b93ff7c74562762c3714783a7233ac448603b25f@107.21.251.55:30301" - - "OP_GETH_STATE_SCHEME=path" - - "GETH_STATE_SCHEME=path" - - "OP_GETH_DB_ENGINE=pebble" - - "OP_GETH_P2P_PORT=30765" - - "GETH_DISCOVERY_PORT=30765" - - "GETH_DB_ENGINE=pebble" - - "P2P_PORT=30765" - - "WS_PORT=8545" - - "IP=${IP}" - - "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}" - - "OP_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt" - labels: - - "traefik.enable=true" - - "traefik.http.middlewares.base-sepolia-stripprefix.stripprefix.prefixes=/base-sepolia" - - "traefik.http.services.base-sepolia.loadbalancer.server.port=8545" - - "traefik.http.routers.base-sepolia.entrypoints=websecure" - - "traefik.http.routers.base-sepolia.tls.certresolver=myresolver" - - "traefik.http.routers.base-sepolia.rule=Host(`$DOMAIN`) && PathPrefix(`/base-sepolia`)" - - "traefik.http.routers.base-sepolia.middlewares=base-sepolia-stripprefix, ipwhitelist" - networks: - - chains - - - base-sepolia-node: - build: ./base - depends_on: - - base-sepolia - volumes: - - .jwtsecret:/jwtsecret - expose: - - 8545 # RPC - - 54844 # P2P TCP - - 54844/udp # P2P UDP - - 7300 # metrics - - 6060 # pprof - ports: - - "54844:54844" - - "54844:54844/udp" - #command: [ "sh", "./op-node-entrypoint" ] - entrypoint: ./op-node - restart: always - stop_grace_period: 30s - environment: - - "OP_NODE_NETWORK=base-sepolia" - - "OP_NODE_SYNCMODE=execution-layer" - - "OP_NODE_L1_ETH_RPC=${BASE_SEPOLIA_ENDPOINT}" - - "OP_NODE_L2_ENGINE_AUTH_RAW=${JWTSECRET}" - - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://base-sepolia: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_AGENT=base" - - "OP_NODE_P2P_BOOTNODES=enr:-J64QBwRIWAco7lv6jImSOjPU_W266lHXzpAS5YOh7WmgTyBZkgLgOwo_mxKJq3wz2XRbsoBItbv1dCyjIoNq67mFguGAYrTxM42gmlkgnY0gmlwhBLSsHKHb3BzdGFja4S0lAUAiXNlY3AyNTZrMaEDmoWSi8hcsRpQf2eJsNUx-sqv6fH4btmo2HsAzZFAKnKDdGNwgiQGg3VkcIIkBg,enr:-J64QFa3qMsONLGphfjEkeYyF6Jkil_jCuJmm7_a42ckZeUQGLVzrzstZNb1dgBp1GGx9bzImq5VxJLP-BaptZThGiWGAYrTytOvgmlkgnY0gmlwhGsV-zeHb3BzdGFja4S0lAUAiXNlY3AyNTZrMaEDahfSECTIS_cXyZ8IyNf4leANlZnrsMEWTkEYxf4GMCmDdGNwgiQGg3VkcIIkBg" - - "OP_NODE_BETA_EXTRA_NETWORKS=true" - - "OP_NODE_ROLLUP_LOAD_PROTOCOL_VERSIONS=true" - - "OP_NODE_P2P_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=54844" - - "OP_NODE_P2P_LISTEN_UDP_PORT=54844" - - "OP_NODE_ROLLUP_CONFIG=sepolia/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=${BASE_SEPOLIA_ENDPOINT_KIND:-basic}" - - "OP_NODE_L1_TRUST_RPC=${BASE_SEPOLIA_ENDPOINT_TRUST:-false}" - - "OP_NODE_L1_BEACON=${BASE_SEPOLIA_ENDPOINT_BEACON}" - networks: - - chains - -volumes: - base-sepolia: diff --git a/hashkeychain-mainnet.yml b/hashkeychain-mainnet.yml new file mode 120000 index 00000000..67995667 --- /dev/null +++ b/hashkeychain-mainnet.yml @@ -0,0 +1 @@ +op/geth/hashkeychain-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/ink-mainnet.yml b/ink-mainnet.yml new file mode 120000 index 00000000..bbd6c4dc --- /dev/null +++ b/ink-mainnet.yml @@ -0,0 +1 @@ +op/geth/ink-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/ink-sepolia.yml b/ink-sepolia.yml new file mode 120000 index 00000000..fbf4c026 --- /dev/null +++ b/ink-sepolia.yml @@ -0,0 +1 @@ +op/geth/ink-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/lisk-mainnet.yml b/lisk-mainnet.yml new file mode 120000 index 00000000..ed1e6eff --- /dev/null +++ b/lisk-mainnet.yml @@ -0,0 +1 @@ +op/geth/lisk-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/lisk-sepolia.yml b/lisk-sepolia.yml new file mode 120000 index 00000000..cab6ea6b --- /dev/null +++ b/lisk-sepolia.yml @@ -0,0 +1 @@ +op/geth/lisk-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/metal-mainnet.yml b/metal-mainnet.yml new file mode 120000 index 00000000..75d8742a --- /dev/null +++ b/metal-mainnet.yml @@ -0,0 +1 @@ +op/geth/metal-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/metal-sepolia.yml b/metal-sepolia.yml new file mode 120000 index 00000000..46bfd235 --- /dev/null +++ b/metal-sepolia.yml @@ -0,0 +1 @@ +op/geth/metal-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/mode-mainnet.yml b/mode-mainnet.yml new file mode 120000 index 00000000..0022da72 --- /dev/null +++ b/mode-mainnet.yml @@ -0,0 +1 @@ +op/geth/mode-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/mode-sepolia.yml b/mode-sepolia.yml new file mode 120000 index 00000000..cd76c374 --- /dev/null +++ b/mode-sepolia.yml @@ -0,0 +1 @@ +op/geth/mode-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/op-mainnet.yml b/op-mainnet.yml new file mode 120000 index 00000000..3cd96d24 --- /dev/null +++ b/op-mainnet.yml @@ -0,0 +1 @@ +op/geth/op-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/op-sepolia.yml b/op-sepolia.yml new file mode 120000 index 00000000..1f8bfb10 --- /dev/null +++ b/op-sepolia.yml @@ -0,0 +1 @@ +op/geth/op-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/op/.dockerignore b/op/.dockerignore new file mode 100644 index 00000000..c58ce82c --- /dev/null +++ b/op/.dockerignore @@ -0,0 +1 @@ +geth \ No newline at end of file diff --git a/op/geth/base-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/base-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..7953df31 --- /dev/null +++ b/op/geth/base-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + base-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10596:10596" + - "10596:10596/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - base-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=base-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.base-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/base-mainnet" + - "traefik.http.services.base-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.base-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.base-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.base-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/base-mainnet`)" + - "traefik.http.routers.base-mainnet-op-geth-archive-leveldb-hash.middlewares=base-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + base-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15596:15596" + - "15596:15596/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=base-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://base-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15596" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15596" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + base-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/base-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/base-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from base-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/base-mainnet-op-geth-pruned-pebble-path.yml index 96329904..94a3414b 100644 --- a/base-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/base-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - base-mainnet: + base-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10503:10503" - - "10503:10503/udp" + - "10422:10422" + - "10422:10422/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=base-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.base-mainnet-op-geth-stripprefix.stripprefix.prefixes=/base-mainnet" - - "traefik.http.services.base-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.base-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.base-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.base-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/base-mainnet`)" - - "traefik.http.routers.base-mainnet-op-geth.middlewares=base-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.base-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/base-mainnet-pruned" + - "traefik.http.services.base-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.base-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.base-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.base-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/base-mainnet-pruned`)" + - "traefik.http.routers.base-mainnet-op-geth-pruned-pebble-path.middlewares=base-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - base-mainnet-node: + base-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15503:15503" - - "15503:15503/udp" + - "15422:15422" + - "15422:15422/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://base-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://base-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15503" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15503" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15422" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15422" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - base-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + base-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/base-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/base-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..4e99f150 --- /dev/null +++ b/op/geth/base-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + base-sepolia: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10910:10910" + - "10910:10910/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - base-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=base-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.base-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/base-sepolia" + - "traefik.http.services.base-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.base-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.base-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.base-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/base-sepolia`)" + - "traefik.http.routers.base-sepolia-op-geth-archive-leveldb-hash.middlewares=base-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + base-sepolia-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15910:15910" + - "15910:15910/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=base-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://base-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15910" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15910" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + base-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/base-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/base-sepolia-op-geth-pruned-pebble-path.yml similarity index 67% rename from base-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/base-sepolia-op-geth-pruned-pebble-path.yml index 8d0a08fe..6cdff822 100644 --- a/base-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/base-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - base-sepolia: + base-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10800:10800" - - "10800:10800/udp" + - "10022:10022" + - "10022:10022/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=base-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.base-sepolia-op-geth-stripprefix.stripprefix.prefixes=/base-sepolia" - - "traefik.http.services.base-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.base-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.base-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.base-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/base-sepolia`)" - - "traefik.http.routers.base-sepolia-op-geth.middlewares=base-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.base-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/base-sepolia-pruned" + - "traefik.http.services.base-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.base-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.base-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.base-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/base-sepolia-pruned`)" + - "traefik.http.routers.base-sepolia-op-geth-pruned-pebble-path.middlewares=base-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - base-sepolia-node: + base-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15800:15800" - - "15800:15800/udp" + - "15022:15022" + - "15022:15022/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://base-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://base-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15800" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15800" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15022" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15022" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - base-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + base-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/bob-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/bob-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..4471f8c9 --- /dev/null +++ b/op/geth/bob-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + bob-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10046:10046" + - "10046:10046/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - bob-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=bob-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.bob-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/bob-mainnet" + - "traefik.http.services.bob-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.bob-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.bob-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.bob-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/bob-mainnet`)" + - "traefik.http.routers.bob-mainnet-op-geth-archive-leveldb-hash.middlewares=bob-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + bob-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15046:15046" + - "15046:15046/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=bob-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://bob-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15046" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15046" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + bob-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/bob-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/bob-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from bob-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/bob-mainnet-op-geth-pruned-pebble-path.yml index 665439b0..69eb844f 100644 --- a/bob-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/bob-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - bob-mainnet: + bob-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10205:10205" - - "10205:10205/udp" + - "10347:10347" + - "10347:10347/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=bob-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.bob-mainnet-op-geth-stripprefix.stripprefix.prefixes=/bob-mainnet" - - "traefik.http.services.bob-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.bob-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.bob-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.bob-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/bob-mainnet`)" - - "traefik.http.routers.bob-mainnet-op-geth.middlewares=bob-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.bob-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/bob-mainnet-pruned" + - "traefik.http.services.bob-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.bob-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.bob-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.bob-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/bob-mainnet-pruned`)" + - "traefik.http.routers.bob-mainnet-op-geth-pruned-pebble-path.middlewares=bob-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - bob-mainnet-node: + bob-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15205:15205" - - "15205:15205/udp" + - "15347:15347" + - "15347:15347/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://bob-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://bob-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15205" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15205" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15347" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15347" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - bob-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + bob-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/hashkeychain-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/hashkeychain-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..b73a56ee --- /dev/null +++ b/op/geth/hashkeychain-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + hashkeychain-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10113:10113" + - "10113:10113/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - hashkeychain-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=hashkeychain-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.hashkeychain-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/hashkeychain-mainnet" + - "traefik.http.services.hashkeychain-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/hashkeychain-mainnet`)" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-archive-leveldb-hash.middlewares=hashkeychain-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + hashkeychain-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15113:15113" + - "15113:15113/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=hashkeychain-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://hashkeychain-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15113" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15113" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + hashkeychain-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/hashkeychain-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/hashkeychain-mainnet-op-geth-pruned-pebble-path.yml similarity index 65% rename from hashkeychain-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/hashkeychain-mainnet-op-geth-pruned-pebble-path.yml index 61ade956..be2d9721 100644 --- a/hashkeychain-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/hashkeychain-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - hashkeychain-mainnet: + hashkeychain-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10579:10579" - - "10579:10579/udp" + - "10188:10188" + - "10188:10188/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=hashkeychain-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.hashkeychain-mainnet-op-geth-stripprefix.stripprefix.prefixes=/hashkeychain-mainnet" - - "traefik.http.services.hashkeychain-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.hashkeychain-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.hashkeychain-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.hashkeychain-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/hashkeychain-mainnet`)" - - "traefik.http.routers.hashkeychain-mainnet-op-geth.middlewares=hashkeychain-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.hashkeychain-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/hashkeychain-mainnet-pruned" + - "traefik.http.services.hashkeychain-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/hashkeychain-mainnet-pruned`)" + - "traefik.http.routers.hashkeychain-mainnet-op-geth-pruned-pebble-path.middlewares=hashkeychain-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - hashkeychain-mainnet-node: + hashkeychain-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15579:15579" - - "15579:15579/udp" + - "15188:15188" + - "15188:15188/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://hashkeychain-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://hashkeychain-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15579" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15579" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15188" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15188" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - hashkeychain-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + hashkeychain-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/ink-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/ink-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..f78d6e78 --- /dev/null +++ b/op/geth/ink-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + ink-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10713:10713" + - "10713:10713/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - ink-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=ink-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.ink-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/ink-mainnet" + - "traefik.http.services.ink-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.ink-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.ink-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.ink-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/ink-mainnet`)" + - "traefik.http.routers.ink-mainnet-op-geth-archive-leveldb-hash.middlewares=ink-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + ink-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15713:15713" + - "15713:15713/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=ink-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://ink-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15713" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15713" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + ink-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/ink-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/ink-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from ink-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/ink-mainnet-op-geth-pruned-pebble-path.yml index d6ce0c68..c589bd8a 100644 --- a/ink-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/ink-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - ink-mainnet: + ink-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10395:10395" - - "10395:10395/udp" + - "10271:10271" + - "10271:10271/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=ink-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.ink-mainnet-op-geth-stripprefix.stripprefix.prefixes=/ink-mainnet" - - "traefik.http.services.ink-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.ink-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.ink-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.ink-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/ink-mainnet`)" - - "traefik.http.routers.ink-mainnet-op-geth.middlewares=ink-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.ink-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/ink-mainnet-pruned" + - "traefik.http.services.ink-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.ink-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.ink-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.ink-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/ink-mainnet-pruned`)" + - "traefik.http.routers.ink-mainnet-op-geth-pruned-pebble-path.middlewares=ink-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - ink-mainnet-node: + ink-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15395:15395" - - "15395:15395/udp" + - "15271:15271" + - "15271:15271/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://ink-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://ink-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15395" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15395" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15271" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15271" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - ink-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + ink-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/ink-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/ink-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..4e938f7a --- /dev/null +++ b/op/geth/ink-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + ink-sepolia: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10659:10659" + - "10659:10659/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - ink-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=ink-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.ink-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/ink-sepolia" + - "traefik.http.services.ink-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.ink-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.ink-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.ink-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/ink-sepolia`)" + - "traefik.http.routers.ink-sepolia-op-geth-archive-leveldb-hash.middlewares=ink-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + ink-sepolia-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15659:15659" + - "15659:15659/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=ink-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://ink-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15659" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15659" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + ink-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/ink-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/ink-sepolia-op-geth-pruned-pebble-path.yml similarity index 67% rename from ink-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/ink-sepolia-op-geth-pruned-pebble-path.yml index 990fa0c6..79dc2380 100644 --- a/ink-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/ink-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - ink-sepolia: + ink-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10829:10829" - - "10829:10829/udp" + - "10869:10869" + - "10869:10869/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=ink-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.ink-sepolia-op-geth-stripprefix.stripprefix.prefixes=/ink-sepolia" - - "traefik.http.services.ink-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.ink-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.ink-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.ink-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/ink-sepolia`)" - - "traefik.http.routers.ink-sepolia-op-geth.middlewares=ink-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.ink-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/ink-sepolia-pruned" + - "traefik.http.services.ink-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.ink-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.ink-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.ink-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/ink-sepolia-pruned`)" + - "traefik.http.routers.ink-sepolia-op-geth-pruned-pebble-path.middlewares=ink-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - ink-sepolia-node: + ink-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15829:15829" - - "15829:15829/udp" + - "15869:15869" + - "15869:15869/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://ink-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://ink-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15829" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15829" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15869" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15869" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - ink-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + ink-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/lisk-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/lisk-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..06afd1c3 --- /dev/null +++ b/op/geth/lisk-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + lisk-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10157:10157" + - "10157:10157/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - lisk-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=lisk-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.lisk-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/lisk-mainnet" + - "traefik.http.services.lisk-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.lisk-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.lisk-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.lisk-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/lisk-mainnet`)" + - "traefik.http.routers.lisk-mainnet-op-geth-archive-leveldb-hash.middlewares=lisk-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + lisk-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15157:15157" + - "15157:15157/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=lisk-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://lisk-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15157" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15157" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + lisk-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/lisk-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/lisk-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from lisk-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/lisk-mainnet-op-geth-pruned-pebble-path.yml index a9831d07..07ae9220 100644 --- a/lisk-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/lisk-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - lisk-mainnet: + lisk-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10295:10295" - - "10295:10295/udp" + - "10971:10971" + - "10971:10971/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=lisk-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.lisk-mainnet-op-geth-stripprefix.stripprefix.prefixes=/lisk-mainnet" - - "traefik.http.services.lisk-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.lisk-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.lisk-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.lisk-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/lisk-mainnet`)" - - "traefik.http.routers.lisk-mainnet-op-geth.middlewares=lisk-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.lisk-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/lisk-mainnet-pruned" + - "traefik.http.services.lisk-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.lisk-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.lisk-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.lisk-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/lisk-mainnet-pruned`)" + - "traefik.http.routers.lisk-mainnet-op-geth-pruned-pebble-path.middlewares=lisk-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - lisk-mainnet-node: + lisk-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15295:15295" - - "15295:15295/udp" + - "15971:15971" + - "15971:15971/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://lisk-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://lisk-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15295" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15295" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15971" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15971" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - lisk-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + lisk-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/lisk-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/lisk-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..51944486 --- /dev/null +++ b/op/geth/lisk-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + lisk-sepolia: + build: + context: ./op + args: + OP_VERSION: v1.12.1 + GETH_VERSION: v1.101503.1 + OP_PATCH: sepolia/lisk/op-node.patch + expose: + - 8545 + - 6060 + ports: + - "10457:10457" + - "10457:10457/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - lisk-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=lisk-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.lisk-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/lisk-sepolia" + - "traefik.http.services.lisk-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.lisk-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.lisk-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.lisk-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/lisk-sepolia`)" + - "traefik.http.routers.lisk-sepolia-op-geth-archive-leveldb-hash.middlewares=lisk-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + lisk-sepolia-node: + build: + context: ./op + args: + OP_VERSION: v1.12.1 + GETH_VERSION: v1.101503.1 + OP_PATCH: sepolia/lisk/op-node.patch + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15457:15457" + - "15457:15457/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=lisk-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://lisk-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15457" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15457" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + lisk-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/lisk-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/lisk-sepolia-op-geth-pruned-pebble-path.yml similarity index 67% rename from lisk-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/lisk-sepolia-op-geth-pruned-pebble-path.yml index bf2f7f78..1719275e 100644 --- a/lisk-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/lisk-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - lisk-sepolia: + lisk-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10063:10063" - - "10063:10063/udp" + - "10490:10490" + - "10490:10490/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=lisk-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.lisk-sepolia-op-geth-stripprefix.stripprefix.prefixes=/lisk-sepolia" - - "traefik.http.services.lisk-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.lisk-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.lisk-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.lisk-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/lisk-sepolia`)" - - "traefik.http.routers.lisk-sepolia-op-geth.middlewares=lisk-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.lisk-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/lisk-sepolia-pruned" + - "traefik.http.services.lisk-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.lisk-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.lisk-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.lisk-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/lisk-sepolia-pruned`)" + - "traefik.http.routers.lisk-sepolia-op-geth-pruned-pebble-path.middlewares=lisk-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - lisk-sepolia-node: + lisk-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15063:15063" - - "15063:15063/udp" + - "15490:15490" + - "15490:15490/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://lisk-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://lisk-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15063" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15063" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15490" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15490" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - lisk-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + lisk-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/metal-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/metal-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..5c60afc3 --- /dev/null +++ b/op/geth/metal-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + metal-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10324:10324" + - "10324:10324/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - metal-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=metal-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.metal-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/metal-mainnet" + - "traefik.http.services.metal-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.metal-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.metal-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.metal-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/metal-mainnet`)" + - "traefik.http.routers.metal-mainnet-op-geth-archive-leveldb-hash.middlewares=metal-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + metal-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15324:15324" + - "15324:15324/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=metal-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://metal-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15324" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15324" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + metal-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/metal-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/metal-mainnet-op-geth-pruned-pebble-path.yml similarity index 66% rename from metal-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/metal-mainnet-op-geth-pruned-pebble-path.yml index 043b6403..4a039402 100644 --- a/metal-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/metal-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - metal-mainnet: + metal-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10221:10221" - - "10221:10221/udp" + - "10821:10821" + - "10821:10821/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=metal-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.metal-mainnet-op-geth-stripprefix.stripprefix.prefixes=/metal-mainnet" - - "traefik.http.services.metal-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.metal-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.metal-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.metal-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/metal-mainnet`)" - - "traefik.http.routers.metal-mainnet-op-geth.middlewares=metal-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.metal-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/metal-mainnet-pruned" + - "traefik.http.services.metal-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.metal-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.metal-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.metal-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/metal-mainnet-pruned`)" + - "traefik.http.routers.metal-mainnet-op-geth-pruned-pebble-path.middlewares=metal-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - metal-mainnet-node: + metal-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15221:15221" - - "15221:15221/udp" + - "15821:15821" + - "15821:15821/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://metal-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://metal-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15221" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15221" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15821" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15821" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - metal-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + metal-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/metal-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/metal-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..f0384b66 --- /dev/null +++ b/op/geth/metal-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + metal-sepolia: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10770:10770" + - "10770:10770/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - metal-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=metal-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.metal-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/metal-sepolia" + - "traefik.http.services.metal-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.metal-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.metal-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.metal-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/metal-sepolia`)" + - "traefik.http.routers.metal-sepolia-op-geth-archive-leveldb-hash.middlewares=metal-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + metal-sepolia-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15770:15770" + - "15770:15770/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=metal-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://metal-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15770" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15770" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + metal-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/metal-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/metal-sepolia-op-geth-pruned-pebble-path.yml similarity index 67% rename from metal-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/metal-sepolia-op-geth-pruned-pebble-path.yml index 172d0954..e34ad90c 100644 --- a/metal-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/metal-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - metal-sepolia: + metal-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10439:10439" - - "10439:10439/udp" + - "10701:10701" + - "10701:10701/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=metal-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.metal-sepolia-op-geth-stripprefix.stripprefix.prefixes=/metal-sepolia" - - "traefik.http.services.metal-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.metal-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.metal-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.metal-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/metal-sepolia`)" - - "traefik.http.routers.metal-sepolia-op-geth.middlewares=metal-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.metal-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/metal-sepolia-pruned" + - "traefik.http.services.metal-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.metal-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.metal-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.metal-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/metal-sepolia-pruned`)" + - "traefik.http.routers.metal-sepolia-op-geth-pruned-pebble-path.middlewares=metal-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - metal-sepolia-node: + metal-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15439:15439" - - "15439:15439/udp" + - "15701:15701" + - "15701:15701/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://metal-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://metal-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15439" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15439" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15701" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15701" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - metal-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + metal-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/mode-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/mode-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..9561ac34 --- /dev/null +++ b/op/geth/mode-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + mode-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10430:10430" + - "10430:10430/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - mode-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=mode-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.mode-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/mode-mainnet" + - "traefik.http.services.mode-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.mode-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.mode-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.mode-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/mode-mainnet`)" + - "traefik.http.routers.mode-mainnet-op-geth-archive-leveldb-hash.middlewares=mode-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + mode-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15430:15430" + - "15430:15430/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=mode-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://mode-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15430" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15430" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + mode-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/mode-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/mode-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from mode-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/mode-mainnet-op-geth-pruned-pebble-path.yml index 001894e1..05d512b9 100644 --- a/mode-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/mode-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - mode-mainnet: + mode-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10182:10182" - - "10182:10182/udp" + - "10054:10054" + - "10054:10054/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=mode-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.mode-mainnet-op-geth-stripprefix.stripprefix.prefixes=/mode-mainnet" - - "traefik.http.services.mode-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.mode-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.mode-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.mode-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/mode-mainnet`)" - - "traefik.http.routers.mode-mainnet-op-geth.middlewares=mode-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.mode-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/mode-mainnet-pruned" + - "traefik.http.services.mode-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.mode-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.mode-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.mode-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/mode-mainnet-pruned`)" + - "traefik.http.routers.mode-mainnet-op-geth-pruned-pebble-path.middlewares=mode-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - mode-mainnet-node: + mode-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15182:15182" - - "15182:15182/udp" + - "15054:15054" + - "15054:15054/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://mode-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://mode-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15182" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15182" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15054" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15054" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - mode-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + mode-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/mode-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/mode-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..7626bb29 --- /dev/null +++ b/op/geth/mode-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + mode-sepolia: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10835:10835" + - "10835:10835/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - mode-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=mode-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.mode-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/mode-sepolia" + - "traefik.http.services.mode-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.mode-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.mode-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.mode-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/mode-sepolia`)" + - "traefik.http.routers.mode-sepolia-op-geth-archive-leveldb-hash.middlewares=mode-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + mode-sepolia-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15835:15835" + - "15835:15835/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=mode-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://mode-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15835" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15835" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + mode-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/mode-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/mode-sepolia-op-geth-pruned-pebble-path.yml similarity index 67% rename from mode-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/mode-sepolia-op-geth-pruned-pebble-path.yml index a9d81d8b..da579b30 100644 --- a/mode-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/mode-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - mode-sepolia: + mode-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10513:10513" - - "10513:10513/udp" + - "10308:10308" + - "10308:10308/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=mode-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.mode-sepolia-op-geth-stripprefix.stripprefix.prefixes=/mode-sepolia" - - "traefik.http.services.mode-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.mode-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.mode-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.mode-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/mode-sepolia`)" - - "traefik.http.routers.mode-sepolia-op-geth.middlewares=mode-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.mode-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/mode-sepolia-pruned" + - "traefik.http.services.mode-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.mode-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.mode-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.mode-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/mode-sepolia-pruned`)" + - "traefik.http.routers.mode-sepolia-op-geth-pruned-pebble-path.middlewares=mode-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - mode-sepolia-node: + mode-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15513:15513" - - "15513:15513/udp" + - "15308:15308" + - "15308:15308/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://mode-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://mode-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15513" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15513" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15308" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15308" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - mode-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + mode-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/op-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/op-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..15742778 --- /dev/null +++ b/op/geth/op-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + op-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10399:10399" + - "10399:10399/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - op-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=op-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.op-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/op-mainnet" + - "traefik.http.services.op-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.op-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.op-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.op-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/op-mainnet`)" + - "traefik.http.routers.op-mainnet-op-geth-archive-leveldb-hash.middlewares=op-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + op-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15399:15399" + - "15399:15399/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=op-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://op-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15399" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15399" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + op-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/op-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/op-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from op-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/op-mainnet-op-geth-pruned-pebble-path.yml index 20d21991..f5282754 100644 --- a/op-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/op-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - op-mainnet: + op-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10575:10575" - - "10575:10575/udp" + - "10687:10687" + - "10687:10687/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=op-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.op-mainnet-op-geth-stripprefix.stripprefix.prefixes=/op-mainnet" - - "traefik.http.services.op-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.op-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.op-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.op-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/op-mainnet`)" - - "traefik.http.routers.op-mainnet-op-geth.middlewares=op-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.op-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/op-mainnet-pruned" + - "traefik.http.services.op-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.op-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.op-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.op-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/op-mainnet-pruned`)" + - "traefik.http.routers.op-mainnet-op-geth-pruned-pebble-path.middlewares=op-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - op-mainnet-node: + op-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15575:15575" - - "15575:15575/udp" + - "15687:15687" + - "15687:15687/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://op-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://op-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15575" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15575" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15687" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15687" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - op-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + op-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/op-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/op-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..ff625737 --- /dev/null +++ b/op/geth/op-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + op-sepolia: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10257:10257" + - "10257:10257/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - op-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=op-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.op-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/op-sepolia" + - "traefik.http.services.op-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.op-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.op-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.op-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/op-sepolia`)" + - "traefik.http.routers.op-sepolia-op-geth-archive-leveldb-hash.middlewares=op-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + op-sepolia-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15257:15257" + - "15257:15257/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=op-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://op-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15257" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15257" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + op-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/op-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/op-sepolia-op-geth-pruned-pebble-path.yml similarity index 67% rename from op-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/op-sepolia-op-geth-pruned-pebble-path.yml index 61eb1419..b27faac7 100644 --- a/op-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/op-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - op-sepolia: + op-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10704:10704" - - "10704:10704/udp" + - "10981:10981" + - "10981:10981/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=op-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.op-sepolia-op-geth-stripprefix.stripprefix.prefixes=/op-sepolia" - - "traefik.http.services.op-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.op-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.op-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.op-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/op-sepolia`)" - - "traefik.http.routers.op-sepolia-op-geth.middlewares=op-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.op-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/op-sepolia-pruned" + - "traefik.http.services.op-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.op-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.op-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.op-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/op-sepolia-pruned`)" + - "traefik.http.routers.op-sepolia-op-geth-pruned-pebble-path.middlewares=op-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - op-sepolia-node: + op-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15704:15704" - - "15704:15704/udp" + - "15981:15981" + - "15981:15981/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://op-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://op-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15704" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15704" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15981" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15981" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - op-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + op-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/snax-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/snax-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..c1e33e94 --- /dev/null +++ b/op/geth/snax-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + snax-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10249:10249" + - "10249:10249/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - snax-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=snax-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.snax-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/snax-mainnet" + - "traefik.http.services.snax-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.snax-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.snax-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.snax-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/snax-mainnet`)" + - "traefik.http.routers.snax-mainnet-op-geth-archive-leveldb-hash.middlewares=snax-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + snax-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15249:15249" + - "15249:15249/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=snax-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://snax-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15249" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15249" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + snax-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/snax-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/snax-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from snax-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/snax-mainnet-op-geth-pruned-pebble-path.yml index 864d7bea..00446971 100644 --- a/snax-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/snax-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - snax-mainnet: + snax-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10681:10681" - - "10681:10681/udp" + - "10332:10332" + - "10332:10332/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=snax-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.snax-mainnet-op-geth-stripprefix.stripprefix.prefixes=/snax-mainnet" - - "traefik.http.services.snax-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.snax-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.snax-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.snax-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/snax-mainnet`)" - - "traefik.http.routers.snax-mainnet-op-geth.middlewares=snax-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.snax-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/snax-mainnet-pruned" + - "traefik.http.services.snax-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.snax-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.snax-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.snax-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/snax-mainnet-pruned`)" + - "traefik.http.routers.snax-mainnet-op-geth-pruned-pebble-path.middlewares=snax-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - snax-mainnet-node: + snax-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15681:15681" - - "15681:15681/udp" + - "15332:15332" + - "15332:15332/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://snax-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://snax-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15681" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15681" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15332" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15332" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - snax-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + snax-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/swell-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/swell-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..31a2a5ec --- /dev/null +++ b/op/geth/swell-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + swell-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10863:10863" + - "10863:10863/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - swell-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=swell-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.swell-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/swell-mainnet" + - "traefik.http.services.swell-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.swell-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.swell-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.swell-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/swell-mainnet`)" + - "traefik.http.routers.swell-mainnet-op-geth-archive-leveldb-hash.middlewares=swell-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + swell-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15863:15863" + - "15863:15863/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=swell-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://swell-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15863" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15863" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + swell-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/swell-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/swell-mainnet-op-geth-pruned-pebble-path.yml similarity index 66% rename from swell-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/swell-mainnet-op-geth-pruned-pebble-path.yml index 7d53cf78..f1f1e132 100644 --- a/swell-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/swell-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - swell-mainnet: + swell-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10649:10649" - - "10649:10649/udp" + - "10312:10312" + - "10312:10312/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=swell-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.swell-mainnet-op-geth-stripprefix.stripprefix.prefixes=/swell-mainnet" - - "traefik.http.services.swell-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.swell-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.swell-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.swell-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/swell-mainnet`)" - - "traefik.http.routers.swell-mainnet-op-geth.middlewares=swell-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.swell-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/swell-mainnet-pruned" + - "traefik.http.services.swell-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.swell-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.swell-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.swell-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/swell-mainnet-pruned`)" + - "traefik.http.routers.swell-mainnet-op-geth-pruned-pebble-path.middlewares=swell-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - swell-mainnet-node: + swell-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15649:15649" - - "15649:15649/udp" + - "15312:15312" + - "15312:15312/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://swell-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://swell-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15649" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15649" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15312" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15312" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - swell-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + swell-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/unichain-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/unichain-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..5efb0756 --- /dev/null +++ b/op/geth/unichain-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + unichain-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10789:10789" + - "10789:10789/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - unichain-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=unichain-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.unichain-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/unichain-mainnet" + - "traefik.http.services.unichain-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.unichain-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.unichain-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.unichain-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/unichain-mainnet`)" + - "traefik.http.routers.unichain-mainnet-op-geth-archive-leveldb-hash.middlewares=unichain-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + unichain-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15789:15789" + - "15789:15789/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=unichain-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://unichain-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15789" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15789" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + unichain-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/unichain-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/unichain-mainnet-op-geth-pruned-pebble-path.yml similarity index 66% rename from unichain-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/unichain-mainnet-op-geth-pruned-pebble-path.yml index 4f8f9168..3971dc8d 100644 --- a/unichain-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/unichain-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - unichain-mainnet: + unichain-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10248:10248" - - "10248:10248/udp" + - "10954:10954" + - "10954:10954/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=unichain-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.unichain-mainnet-op-geth-stripprefix.stripprefix.prefixes=/unichain-mainnet" - - "traefik.http.services.unichain-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.unichain-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.unichain-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.unichain-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/unichain-mainnet`)" - - "traefik.http.routers.unichain-mainnet-op-geth.middlewares=unichain-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.unichain-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/unichain-mainnet-pruned" + - "traefik.http.services.unichain-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.unichain-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.unichain-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.unichain-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/unichain-mainnet-pruned`)" + - "traefik.http.routers.unichain-mainnet-op-geth-pruned-pebble-path.middlewares=unichain-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - unichain-mainnet-node: + unichain-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15248:15248" - - "15248:15248/udp" + - "15954:15954" + - "15954:15954/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://unichain-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://unichain-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15248" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15248" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15954" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15954" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - unichain-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + unichain-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/unichain-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/unichain-sepolia-op-geth-archive-leveldb-hash.yml similarity index 66% rename from unichain-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/unichain-sepolia-op-geth-archive-leveldb-hash.yml index 45ea7c9a..edc43a2a 100644 --- a/unichain-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/unichain-sepolia-op-geth-archive-leveldb-hash.yml @@ -10,21 +10,21 @@ services: - 8545 - 6060 ports: - - "10224:10224" - - "10224:10224/udp" + - "10589:10589" + - "10589:10589/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m volumes: - - unichain-sepolia-op-geth-pruned-pebble-path:/data + - unichain-sepolia-op-geth-archive-leveldb-hash:/data - .jwtsecret:/jwtsecret environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=unichain-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" - - "GETH_STATE_SCHEME=path" - - "GETH_DB_ENGINE=pebble" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" - "GETH_NAT=extip:${IP}" - "GETH_PORT=19809" - "GETH_WS_PORT=8545" @@ -40,12 +40,12 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.unichain-sepolia-op-geth-stripprefix.stripprefix.prefixes=/unichain-sepolia" - - "traefik.http.services.unichain-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.unichain-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.unichain-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.unichain-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/unichain-sepolia`)" - - "traefik.http.routers.unichain-sepolia-op-geth.middlewares=unichain-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.unichain-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/unichain-sepolia" + - "traefik.http.services.unichain-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.unichain-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.unichain-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.unichain-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/unichain-sepolia`)" + - "traefik.http.routers.unichain-sepolia-op-geth-archive-leveldb-hash.middlewares=unichain-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" networks: - chains @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15224:15224" - - "15224:15224/udp" + - "15589:15589" + - "15589:15589/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -80,8 +80,8 @@ services: - "OP_NODE_METRICS_ENABLED=true" - "OP_NODE_METRICS_PORT=7300" - "OP_NODE_P2P_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15224" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15224" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15589" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15589" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - unichain-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + unichain-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/op/geth/unichain-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/unichain-sepolia-op-geth-pruned-pebble-path.yml new file mode 100644 index 00000000..70989605 --- /dev/null +++ b/op/geth/unichain-sepolia-op-geth-pruned-pebble-path.yml @@ -0,0 +1,99 @@ +services: + unichain-sepolia-pruned: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10226:10226" + - "10226:10226/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - unichain-sepolia-op-geth-pruned-pebble-path:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=unichain-sepolia" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" + - "GETH_STATE_SCHEME=path" + - "GETH_DB_ENGINE=pebble" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.unichain-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/unichain-sepolia-pruned" + - "traefik.http.services.unichain-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.unichain-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.unichain-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.unichain-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/unichain-sepolia-pruned`)" + - "traefik.http.routers.unichain-sepolia-op-geth-pruned-pebble-path.middlewares=unichain-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" + networks: + - chains + + + unichain-sepolia-pruned-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15226:15226" + - "15226:15226/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=unichain-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://unichain-sepolia-pruned: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15226" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15226" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + unichain-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/worldchain-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/worldchain-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..f04dcfdc --- /dev/null +++ b/op/geth/worldchain-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + worldchain-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10162:10162" + - "10162:10162/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - worldchain-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=worldchain-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.worldchain-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/worldchain-mainnet" + - "traefik.http.services.worldchain-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.worldchain-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.worldchain-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.worldchain-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/worldchain-mainnet`)" + - "traefik.http.routers.worldchain-mainnet-op-geth-archive-leveldb-hash.middlewares=worldchain-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + worldchain-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15162:15162" + - "15162:15162/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=worldchain-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://worldchain-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15162" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15162" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + worldchain-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/worldchain-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/worldchain-mainnet-op-geth-pruned-pebble-path.yml similarity index 65% rename from worldchain-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/worldchain-mainnet-op-geth-pruned-pebble-path.yml index ab01cc85..eb285711 100644 --- a/worldchain-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/worldchain-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - worldchain-mainnet: + worldchain-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10105:10105" - - "10105:10105/udp" + - "10096:10096" + - "10096:10096/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=worldchain-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.worldchain-mainnet-op-geth-stripprefix.stripprefix.prefixes=/worldchain-mainnet" - - "traefik.http.services.worldchain-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.worldchain-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.worldchain-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.worldchain-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/worldchain-mainnet`)" - - "traefik.http.routers.worldchain-mainnet-op-geth.middlewares=worldchain-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.worldchain-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/worldchain-mainnet-pruned" + - "traefik.http.services.worldchain-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.worldchain-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.worldchain-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.worldchain-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/worldchain-mainnet-pruned`)" + - "traefik.http.routers.worldchain-mainnet-op-geth-pruned-pebble-path.middlewares=worldchain-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - worldchain-mainnet-node: + worldchain-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15105:15105" - - "15105:15105/udp" + - "15096:15096" + - "15096:15096/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://worldchain-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://worldchain-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15105" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15105" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15096" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15096" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - worldchain-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + worldchain-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/worldchain-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/worldchain-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..157b413a --- /dev/null +++ b/op/geth/worldchain-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + worldchain-sepolia: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10720:10720" + - "10720:10720/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - worldchain-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=worldchain-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.worldchain-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/worldchain-sepolia" + - "traefik.http.services.worldchain-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.worldchain-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.worldchain-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.worldchain-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/worldchain-sepolia`)" + - "traefik.http.routers.worldchain-sepolia-op-geth-archive-leveldb-hash.middlewares=worldchain-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + worldchain-sepolia-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15720:15720" + - "15720:15720/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=worldchain-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://worldchain-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15720" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15720" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + worldchain-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/worldchain-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/worldchain-sepolia-op-geth-pruned-pebble-path.yml similarity index 66% rename from worldchain-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/worldchain-sepolia-op-geth-pruned-pebble-path.yml index 0668fead..54fb70dd 100644 --- a/worldchain-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/worldchain-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - worldchain-sepolia: + worldchain-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10872:10872" - - "10872:10872/udp" + - "10620:10620" + - "10620:10620/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=worldchain-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.worldchain-sepolia-op-geth-stripprefix.stripprefix.prefixes=/worldchain-sepolia" - - "traefik.http.services.worldchain-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.worldchain-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.worldchain-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.worldchain-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/worldchain-sepolia`)" - - "traefik.http.routers.worldchain-sepolia-op-geth.middlewares=worldchain-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.worldchain-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/worldchain-sepolia-pruned" + - "traefik.http.services.worldchain-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.worldchain-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.worldchain-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.worldchain-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/worldchain-sepolia-pruned`)" + - "traefik.http.routers.worldchain-sepolia-op-geth-pruned-pebble-path.middlewares=worldchain-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - worldchain-sepolia-node: + worldchain-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15872:15872" - - "15872:15872/udp" + - "15620:15620" + - "15620:15620/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://worldchain-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://worldchain-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15872" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15872" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15620" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15620" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - worldchain-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + worldchain-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/zora-mainnet-op-geth-archive-leveldb-hash.yml b/op/geth/zora-mainnet-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..c178834f --- /dev/null +++ b/op/geth/zora-mainnet-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + zora-mainnet: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10066:10066" + - "10066:10066/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - zora-mainnet-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=zora-mainnet" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.zora-mainnet-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/zora-mainnet" + - "traefik.http.services.zora-mainnet-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.zora-mainnet-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.zora-mainnet-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.zora-mainnet-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/zora-mainnet`)" + - "traefik.http.routers.zora-mainnet-op-geth-archive-leveldb-hash.middlewares=zora-mainnet-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + zora-mainnet-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15066:15066" + - "15066:15066/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=zora-mainnet" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://zora-mainnet: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15066" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15066" + - "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_KIND=${ETHEREUM_MAINNET_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_MAINNET_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_MAINNET_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_MAINNET_BEACON_ARCHIVER}" + + networks: + - chains + +volumes: + zora-mainnet-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/zora-mainnet-op-geth-pruned-pebble-path.yml b/op/geth/zora-mainnet-op-geth-pruned-pebble-path.yml similarity index 67% rename from zora-mainnet-op-geth-pruned-pebble-path.yml rename to op/geth/zora-mainnet-op-geth-pruned-pebble-path.yml index d61a450b..a1eed8ae 100644 --- a/zora-mainnet-op-geth-pruned-pebble-path.yml +++ b/op/geth/zora-mainnet-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - zora-mainnet: + zora-mainnet-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10457:10457" - - "10457:10457/udp" + - "10714:10714" + - "10714:10714/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=zora-mainnet" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.zora-mainnet-op-geth-stripprefix.stripprefix.prefixes=/zora-mainnet" - - "traefik.http.services.zora-mainnet-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.zora-mainnet-op-geth.entrypoints=websecure" - - "traefik.http.routers.zora-mainnet-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.zora-mainnet-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/zora-mainnet`)" - - "traefik.http.routers.zora-mainnet-op-geth.middlewares=zora-mainnet-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.zora-mainnet-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/zora-mainnet-pruned" + - "traefik.http.services.zora-mainnet-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.zora-mainnet-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.zora-mainnet-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.zora-mainnet-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/zora-mainnet-pruned`)" + - "traefik.http.routers.zora-mainnet-op-geth-pruned-pebble-path.middlewares=zora-mainnet-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - zora-mainnet-node: + zora-mainnet-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15457:15457" - - "15457:15457/udp" + - "15714:15714" + - "15714:15714/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_MAINNET_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://zora-mainnet:8551" + - "OP_NODE_L2_ENGINE_RPC=http://zora-mainnet-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15457" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15457" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15714" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15714" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - zora-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file + zora-mainnet-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/op/geth/zora-sepolia-op-geth-archive-leveldb-hash.yml b/op/geth/zora-sepolia-op-geth-archive-leveldb-hash.yml new file mode 100644 index 00000000..18024d41 --- /dev/null +++ b/op/geth/zora-sepolia-op-geth-archive-leveldb-hash.yml @@ -0,0 +1,99 @@ +services: + zora-sepolia: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 6060 + ports: + - "10308:10308" + - "10308:10308/udp" + entrypoint: [ "./geth" ] + restart: unless-stopped + stop_grace_period: 3m + volumes: + - zora-sepolia-op-geth-archive-leveldb-hash:/data + - .jwtsecret:/jwtsecret + environment: + - "GETH_DATADIR=/data" + - "GETH_OP_NETWORK=zora-sepolia" + - "GETH_GCMODE=archive" + - "GETH_SYNCMODE=full" + - "GETH_STATE_SCHEME=hash" + - "GETH_DB_ENGINE=leveldb" + - "GETH_NAT=extip:${IP}" + - "GETH_PORT=19809" + - "GETH_WS_PORT=8545" + - "GETH_HTTP=true" + - "GETH_HTTP_ADDR=0.0.0.0" + - "GETH_HTTP_VHOSTS=*" + - "GETH_WS=true" + - "GETH_WS_ADDR=0.0.0.0" + - "GETH_WS_ORIGINS=*" + - "GETH_HTTP_API=eth,net,debug,admin,web3" + - "GETH_AUTHRPC_JWTSECRET=/jwtsecret" + - "GETH_AUTHRPC_ADDR=0.0.0.0" + - "GETH_AUTHRPC_VHOSTS=*" + labels: + - "traefik.enable=true" + - "traefik.http.middlewares.zora-sepolia-op-geth-archive-leveldb-hash-stripprefix.stripprefix.prefixes=/zora-sepolia" + - "traefik.http.services.zora-sepolia-op-geth-archive-leveldb-hash.loadbalancer.server.port=8545" + - "traefik.http.routers.zora-sepolia-op-geth-archive-leveldb-hash.entrypoints=websecure" + - "traefik.http.routers.zora-sepolia-op-geth-archive-leveldb-hash.tls.certresolver=myresolver" + - "traefik.http.routers.zora-sepolia-op-geth-archive-leveldb-hash.rule=Host(`$DOMAIN`) && PathPrefix(`/zora-sepolia`)" + - "traefik.http.routers.zora-sepolia-op-geth-archive-leveldb-hash.middlewares=zora-sepolia-op-geth-archive-leveldb-hash-stripprefix, ipwhitelist" + networks: + - chains + + + zora-sepolia-node: + build: + context: ./op + args: + OP_VERSION: ${OP_NODE_VERSION:-v1.12.2} + GETH_VERSION: ${OP_GETH_VERSION:-v1.101503.1} + + expose: + - 8545 + - 7300 + - 6060 + ports: + - "15308:15308" + - "15308:15308/udp" + entrypoint: [ "./op-node" ] + restart: unless-stopped + volumes: + - .jwtsecret:/jwtsecret + stop_grace_period: 30s + environment: + - "OP_NODE_NETWORK=zora-sepolia" + - "OP_NODE_SYNCMODE=execution-layer" + - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" + - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" + - "OP_NODE_L2_ENGINE_RPC=http://zora-sepolia: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_LISTEN_IP=0.0.0.0" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15308" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15308" + - "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_KIND=${ETHEREUM_SEPOLIA_EXECUTION_KIND:-basic}" + - "OP_NODE_L1_TRUST_RPC=${ETHEREUM_SEPOLIA_EXECUTION_TRUST:-false}" + - "OP_NODE_L1_BEACON=${ETHEREUM_SEPOLIA_BEACON_REST}" + - "OP_NODE_L1_BEACON_ARCHIVER=${ETHEREUM_SEPOLIA_BEACON_ARCHIVER}" + - "OP_NODE_OVERRIDE_PECTRABLOBSCHEDULE=1742486400" + networks: + - chains + +volumes: + zora-sepolia-op-geth-archive-leveldb-hash: \ No newline at end of file diff --git a/zora-sepolia-op-geth-pruned-pebble-path.yml b/op/geth/zora-sepolia-op-geth-pruned-pebble-path.yml similarity index 67% rename from zora-sepolia-op-geth-pruned-pebble-path.yml rename to op/geth/zora-sepolia-op-geth-pruned-pebble-path.yml index 12a07c9f..54263014 100644 --- a/zora-sepolia-op-geth-pruned-pebble-path.yml +++ b/op/geth/zora-sepolia-op-geth-pruned-pebble-path.yml @@ -1,5 +1,5 @@ services: - zora-sepolia: + zora-sepolia-pruned: build: context: ./op args: @@ -10,8 +10,8 @@ services: - 8545 - 6060 ports: - - "10505:10505" - - "10505:10505/udp" + - "10083:10083" + - "10083:10083/udp" entrypoint: [ "./geth" ] restart: unless-stopped stop_grace_period: 3m @@ -21,8 +21,8 @@ services: environment: - "GETH_DATADIR=/data" - "GETH_OP_NETWORK=zora-sepolia" - - "GETH_GCMODE=full" - - "GETH_SYNCMODE=snap" + - "GETH_GCMODE=" + - "GETH_SYNCMODE=" - "GETH_STATE_SCHEME=path" - "GETH_DB_ENGINE=pebble" - "GETH_NAT=extip:${IP}" @@ -40,17 +40,17 @@ services: - "GETH_AUTHRPC_VHOSTS=*" labels: - "traefik.enable=true" - - "traefik.http.middlewares.zora-sepolia-op-geth-stripprefix.stripprefix.prefixes=/zora-sepolia" - - "traefik.http.services.zora-sepolia-op-geth.loadbalancer.server.port=8545" - - "traefik.http.routers.zora-sepolia-op-geth.entrypoints=websecure" - - "traefik.http.routers.zora-sepolia-op-geth.tls.certresolver=myresolver" - - "traefik.http.routers.zora-sepolia-op-geth.rule=Host(`$DOMAIN`) && PathPrefix(`/zora-sepolia`)" - - "traefik.http.routers.zora-sepolia-op-geth.middlewares=zora-sepolia-op-geth-stripprefix, ipwhitelist" + - "traefik.http.middlewares.zora-sepolia-op-geth-pruned-pebble-path-stripprefix.stripprefix.prefixes=/zora-sepolia-pruned" + - "traefik.http.services.zora-sepolia-op-geth-pruned-pebble-path.loadbalancer.server.port=8545" + - "traefik.http.routers.zora-sepolia-op-geth-pruned-pebble-path.entrypoints=websecure" + - "traefik.http.routers.zora-sepolia-op-geth-pruned-pebble-path.tls.certresolver=myresolver" + - "traefik.http.routers.zora-sepolia-op-geth-pruned-pebble-path.rule=Host(`$DOMAIN`) && PathPrefix(`/zora-sepolia-pruned`)" + - "traefik.http.routers.zora-sepolia-op-geth-pruned-pebble-path.middlewares=zora-sepolia-op-geth-pruned-pebble-path-stripprefix, ipwhitelist" networks: - chains - zora-sepolia-node: + zora-sepolia-pruned-node: build: context: ./op args: @@ -62,8 +62,8 @@ services: - 7300 - 6060 ports: - - "15505:15505" - - "15505:15505/udp" + - "15083:15083" + - "15083:15083/udp" entrypoint: [ "./op-node" ] restart: unless-stopped volumes: @@ -74,14 +74,14 @@ services: - "OP_NODE_SYNCMODE=execution-layer" - "OP_NODE_L1_ETH_RPC=${ETHEREUM_SEPOLIA_EXECUTION_RPC}" - "OP_NODE_L2_ENGINE_AUTH=/jwtsecret" - - "OP_NODE_L2_ENGINE_RPC=http://zora-sepolia:8551" + - "OP_NODE_L2_ENGINE_RPC=http://zora-sepolia-pruned: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_LISTEN_IP=0.0.0.0" - - "OP_NODE_P2P_LISTEN_TCP_PORT=15505" - - "OP_NODE_P2P_LISTEN_UDP_PORT=15505" + - "OP_NODE_P2P_LISTEN_TCP_PORT=15083" + - "OP_NODE_P2P_LISTEN_UDP_PORT=15083" - "OP_NODE_RPC_ADDR=0.0.0.0" - "OP_NODE_P2P_ADVERTISE_IP=${IP}" - "OP_NODE_RPC_PORT=8545" @@ -96,4 +96,4 @@ services: - chains volumes: - zora-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file + zora-sepolia-op-geth-pruned-pebble-path: \ No newline at end of file diff --git a/snax-mainnet.yml b/snax-mainnet.yml new file mode 120000 index 00000000..ab21d141 --- /dev/null +++ b/snax-mainnet.yml @@ -0,0 +1 @@ +op/geth/snax-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/swell-mainnet.yml b/swell-mainnet.yml new file mode 120000 index 00000000..e55443a3 --- /dev/null +++ b/swell-mainnet.yml @@ -0,0 +1 @@ +op/geth/swell-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/unichain-mainnet.yml b/unichain-mainnet.yml new file mode 120000 index 00000000..8f6913a0 --- /dev/null +++ b/unichain-mainnet.yml @@ -0,0 +1 @@ +op/geth/unichain-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/unichain-sepolia.yml b/unichain-sepolia.yml new file mode 120000 index 00000000..38d9972e --- /dev/null +++ b/unichain-sepolia.yml @@ -0,0 +1 @@ +op/geth/unichain-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/worldchain-mainnet.yml b/worldchain-mainnet.yml new file mode 120000 index 00000000..32914e2c --- /dev/null +++ b/worldchain-mainnet.yml @@ -0,0 +1 @@ +op/geth/worldchain-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/worldchain-sepolia.yml b/worldchain-sepolia.yml new file mode 120000 index 00000000..15c48088 --- /dev/null +++ b/worldchain-sepolia.yml @@ -0,0 +1 @@ +op/geth/worldchain-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/zora-mainnet.yml b/zora-mainnet.yml new file mode 120000 index 00000000..f612391d --- /dev/null +++ b/zora-mainnet.yml @@ -0,0 +1 @@ +op/geth/zora-mainnet-op-geth-pruned-pebble-path.yml \ No newline at end of file diff --git a/zora-sepolia.yml b/zora-sepolia.yml new file mode 120000 index 00000000..ebbf2aa3 --- /dev/null +++ b/zora-sepolia.yml @@ -0,0 +1 @@ +op/geth/zora-sepolia-op-geth-pruned-pebble-path.yml \ No newline at end of file