Skip to content

Commit e684286

Browse files
authored
feat: switch consensus client from op-node to base-consensus (#985)
1 parent 6a2a361 commit e684286

File tree

13 files changed

+155
-23
lines changed

13 files changed

+155
-23
lines changed

.env

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
CLIENT=${CLIENT:-geth}
2-
HOST_DATA_DIR=./${CLIENT}-data
2+
HOST_DATA_DIR=./${CLIENT}-data
3+
USE_BASE_CONSENSUS=true

.env.mainnet

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
# NETWORK CONFIGURATION
55
# --------------------
66
RETH_CHAIN=base
7+
BASE_NODE_NETWORK=base
78
OP_NODE_NETWORK=base-mainnet
89
OP_GETH_OP_NETWORK=base-mainnet
910

@@ -14,13 +15,13 @@ OP_SEQUENCER_HTTP=https://mainnet-sequencer.base.org
1415
OP_GETH_SEQUENCER_HTTP=https://mainnet-sequencer.base.org
1516
OP_RETH_SEQUENCER_HTTP=https://mainnet-sequencer.base.org
1617

17-
# SYNC CONFIGURATION
18+
# SYNC CONFIGURATION (deprecated)
1819
# -----------------
1920
OP_NODE_SYNCMODE=execution-layer
2021
OP_NODE_VERIFIER_L1_CONFS=4
2122
OP_NODE_ROLLUP_LOAD_PROTOCOL_VERSIONS=true
2223

23-
# [REQUIRED] L1 CONFIGURATION
24+
# [REQUIRED] L1 CONFIGURATION
2425
# --------------------------
2526
# Replace these values with your L1 (Ethereum) node endpoints
2627
OP_NODE_L1_ETH_RPC=<your-preferred-l1-rpc>
@@ -30,13 +31,21 @@ OP_NODE_L1_BEACON_FETCH_ALL_SIDECARS="true"
3031
OP_NODE_L1_RPC_KIND="debug_geth"
3132
OP_NODE_L1_TRUST_RPC="false"
3233

34+
BASE_NODE_L1_ETH_RPC=<your-preferred-l1-rpc>
35+
BASE_NODE_L1_BEACON=<your-preferred-l1-beacon>
36+
BASE_NODE_L1_TRUST_RPC="false"
37+
3338
# ENGINE CONFIGURATION
3439
# -------------------
3540
OP_NODE_L2_ENGINE_KIND=reth
36-
OP_NODE_L2_ENGINE_RPC=ws://execution:8551
41+
OP_NODE_L2_ENGINE_RPC=http://execution:8551
3742
OP_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt
3843
OP_NODE_L2_ENGINE_AUTH_RAW=688f5d737bad920bdfb2fc2f488d6b6209eebda1dae949a8de91398d932c517a
3944

45+
BASE_NODE_L2_ENGINE_RPC=ws://execution:8551
46+
BASE_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt
47+
BASE_NODE_L2_ENGINE_AUTH_RAW=688f5d737bad920bdfb2fc2f488d6b6209eebda1dae949a8de91398d932c517a
48+
4049
# P2P CONFIGURATION
4150
# ---------------
4251
OP_NODE_P2P_AGENT=base
@@ -46,13 +55,18 @@ OP_NODE_P2P_LISTEN_UDP_PORT=9222
4655
OP_NODE_INTERNAL_IP="true"
4756
OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG
4857

58+
BASE_NODE_P2P_LISTEN_IP=0.0.0.0
59+
BASE_NODE_P2P_ADVERTISE_TCP_PORT=9222
60+
BASE_NODE_P2P_ADVERTISE_UDP_PORT=9222
61+
BASE_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG
62+
4963
# RETH CONFIGURATION
5064
# ----------------
5165
OP_RETH_DISABLE_DISCOVERY="false"
5266
OP_RETH_DISABLE_TX_POOL_GOSSIP="true"
5367
OP_RETH_OP_NETWORK="base"
5468

55-
# RPC CONFIGURATION
69+
# RPC CONFIGURATION (deprecated)
5670
# ---------------
5771
OP_NODE_RPC_ADDR=0.0.0.0
5872
OP_NODE_RPC_PORT=8545
@@ -74,6 +88,12 @@ OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log
7488
OP_NODE_METRICS_ENABLED="true"
7589
OP_NODE_METRICS_ADDR=0.0.0.0
7690
OP_NODE_METRICS_PORT="7300"
91+
92+
BASE_NODE_LOG_VERBOSITY=3
93+
BASE_NODE_LOG_FORMAT="json"
94+
BASE_NODE_METRICS_ENABLED="true"
95+
BASE_NODE_METRICS_ADDR=0.0.0.0
96+
BASE_NODE_METRICS_PORT="7300"
7797
STATSD_ADDRESS="172.17.0.1"
7898

7999
# OPTIONAL SETTINGS
@@ -85,7 +105,7 @@ STATSD_ADDRESS="172.17.0.1"
85105
# OP_NETHERMIND_ETHSTATS_NODE_NAME=NethermindNode
86106
# OP_NETHERMIND_ETHSTATS_ENDPOINT=ethstats_endpoint
87107

88-
# TRUSTED RPC MODE (OPTIONAL - UNCOMMENT TO ENABLE)
108+
# TRUSTED RPC MODE (OPTIONAL - UNCOMMENT TO ENABLE) (deprecated)
89109
# OP_NODE_L1_TRUST_RPC=true
90110

91111
# SNAP SYNC (OPTIONAL EXPERIMENTAL FEATURE - UNCOMMENT TO ENABLE)

.env.sepolia

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
# --------------------
66
RETH_CHAIN=base-sepolia
77
OP_NODE_NETWORK=base-sepolia
8+
BASE_NODE_NETWORK=base-sepolia
89
OP_GETH_OP_NETWORK=base-sepolia
910

1011
# BASE SEQUENCER ENDPOINTS
@@ -14,13 +15,13 @@ OP_SEQUENCER_HTTP=https://sepolia-sequencer.base.org
1415
OP_GETH_SEQUENCER_HTTP=https://sepolia-sequencer.base.org
1516
OP_RETH_SEQUENCER_HTTP=https://sepolia-sequencer.base.org
1617

17-
# SYNC CONFIGURATION
18+
# SYNC CONFIGURATION (deprecated)
1819
# -----------------
1920
OP_NODE_SYNCMODE=execution-layer
2021
OP_NODE_VERIFIER_L1_CONFS=4
2122
OP_NODE_ROLLUP_LOAD_PROTOCOL_VERSIONS=true
2223

23-
# [REQUIRED] L1 CONFIGURATION
24+
# [REQUIRED] L1 CONFIGURATION
2425
# --------------------------
2526
# Replace these values with your L1 (Ethereum) node endpoints
2627
OP_NODE_L1_ETH_RPC=<your-preferred-l1-rpc>
@@ -30,13 +31,21 @@ OP_NODE_L1_BEACON_FETCH_ALL_SIDECARS="true"
3031
OP_NODE_L1_RPC_KIND="debug_geth"
3132
OP_NODE_L1_TRUST_RPC="false"
3233

34+
BASE_NODE_L1_ETH_RPC=<your-preferred-l1-rpc>
35+
BASE_NODE_L1_BEACON=<your-preferred-l1-beacon>
36+
BASE_NODE_L1_TRUST_RPC="false"
37+
3338
# ENGINE CONFIGURATION
3439
# -------------------
3540
OP_NODE_L2_ENGINE_KIND=reth
3641
OP_NODE_L2_ENGINE_RPC=ws://execution:8551
3742
OP_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt
3843
OP_NODE_L2_ENGINE_AUTH_RAW=688f5d737bad920bdfb2fc2f488d6b6209eebda1dae949a8de91398d932c517a
3944

45+
BASE_NODE_L2_ENGINE_RPC=http://execution:8551
46+
BASE_NODE_L2_ENGINE_AUTH=/tmp/engine-auth-jwt
47+
BASE_NODE_L2_ENGINE_AUTH_RAW=688f5d737bad920bdfb2fc2f488d6b6209eebda1dae949a8de91398d932c517a
48+
4049
# P2P CONFIGURATION
4150
# ---------------
4251
OP_NODE_P2P_AGENT=base
@@ -46,13 +55,18 @@ OP_NODE_P2P_LISTEN_UDP_PORT=9222
4655
OP_NODE_INTERNAL_IP="true"
4756
OP_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG
4857

58+
BASE_NODE_P2P_LISTEN_IP=0.0.0.0
59+
BASE_NODE_P2P_ADVERTISE_TCP_PORT=9222
60+
BASE_NODE_P2P_ADVERTISE_UDP_PORT=9222
61+
BASE_NODE_P2P_BOOTNODES=enr:-J24QNz9lbrKbN4iSmmjtnr7SjUMk4zB7f1krHZcTZx-JRKZd0kA2gjufUROD6T3sOWDVDnFJRvqBBo62zuF-hYCohOGAYiOoEyEgmlkgnY0gmlwhAPniryHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQKNVFlCxh_B-716tTs-h1vMzZkSs1FTu_OYTNjgufplG4N0Y3CCJAaDdWRwgiQG,enr:-J24QH-f1wt99sfpHy4c0QJM-NfmsIfmlLAMMcgZCUEgKG_BBYFc6FwYgaMJMQN5dsRBJApIok0jFn-9CS842lGpLmqGAYiOoDRAgmlkgnY0gmlwhLhIgb2Hb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJ9FTIv8B9myn1MWaC_2lJ-sMoeCDkusCsk4BYHjjCq04N0Y3CCJAaDdWRwgiQG,enr:-J24QDXyyxvQYsd0yfsN0cRr1lZ1N11zGTplMNlW4xNEc7LkPXh0NAJ9iSOVdRO95GPYAIc6xmyoCCG6_0JxdL3a0zaGAYiOoAjFgmlkgnY0gmlwhAPckbGHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQJwoS7tzwxqXSyFL7g0JM-KWVbgvjfB8JA__T7yY_cYboN0Y3CCJAaDdWRwgiQG,enr:-J24QHmGyBwUZXIcsGYMaUqGGSl4CFdx9Tozu-vQCn5bHIQbR7On7dZbU61vYvfrJr30t0iahSqhc64J46MnUO2JvQaGAYiOoCKKgmlkgnY0gmlwhAPnCzSHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQINc4fSijfbNIiGhcgvwjsjxVFJHUstK9L1T8OTKUjgloN0Y3CCJAaDdWRwgiQG,enr:-J24QG3ypT4xSu0gjb5PABCmVxZqBjVw9ca7pvsI8jl4KATYAnxBmfkaIuEqy9sKvDHKuNCsy57WwK9wTt2aQgcaDDyGAYiOoGAXgmlkgnY0gmlwhDbGmZaHb3BzdGFja4OFQgCJc2VjcDI1NmsxoQIeAK_--tcLEiu7HvoUlbV52MspE0uCocsx1f_rYvRenIN0Y3CCJAaDdWRwgiQG
62+
4963
# RETH CONFIGURATION
5064
# ----------------
5165
OP_RETH_DISABLE_DISCOVERY="false"
5266
OP_RETH_DISABLE_TX_POOL_GOSSIP="true"
5367
OP_RETH_OP_NETWORK="base-sepolia"
5468

55-
# RPC CONFIGURATION
69+
# RPC CONFIGURATION (deprecated)
5670
# ---------------
5771
OP_NODE_RPC_ADDR=0.0.0.0
5872
OP_NODE_RPC_PORT=8545
@@ -74,6 +88,12 @@ OP_NODE_SNAPSHOT_LOG=/tmp/op-node-snapshot-log
7488
OP_NODE_METRICS_ENABLED="true"
7589
OP_NODE_METRICS_ADDR=0.0.0.0
7690
OP_NODE_METRICS_PORT="7300"
91+
92+
BASE_NODE_LOG_VERBOSITY=3
93+
BASE_NODE_LOG_FORMAT="json"
94+
BASE_NODE_METRICS_ENABLED="true"
95+
BASE_NODE_METRICS_ADDR=0.0.0.0
96+
BASE_NODE_METRICS_PORT="7300"
7797
STATSD_ADDRESS="172.17.0.1"
7898

7999
# OPTIONAL SETTINGS
@@ -85,7 +105,7 @@ STATSD_ADDRESS="172.17.0.1"
85105
# OP_NETHERMIND_ETHSTATS_NODE_NAME=NethermindNode
86106
# OP_NETHERMIND_ETHSTATS_ENDPOINT=ethstats_endpoint
87107

88-
# TRUSTED RPC MODE (OPTIONAL - UNCOMMENT TO ENABLE)
108+
# TRUSTED RPC MODE (OPTIONAL - UNCOMMENT TO ENABLE) (deprecated)
89109
# OP_NODE_L1_TRUST_RPC=true
90110

91111
# SNAP SYNC (OPTIONAL EXPERIMENTAL FEATURE - UNCOMMENT TO ENABLE)

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@
33
/reth-data/
44
/nethermind-data/
55
/dependency_updater/dependency_updater
6-
.DS_Store
6+
.DS_Store

base-consensus-entrypoint

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
#!/bin/bash
2+
set -eu
3+
4+
get_public_ip() {
5+
# Define a list of HTTP-based providers
6+
local PROVIDERS=(
7+
"http://ifconfig.me"
8+
"http://api.ipify.org"
9+
"http://ipecho.net/plain"
10+
"http://v4.ident.me"
11+
)
12+
# Iterate through the providers until an IP is found or the list is exhausted
13+
for provider in "${PROVIDERS[@]}"; do
14+
local IP
15+
IP=$(curl -s --max-time 10 --connect-timeout 5 "$provider")
16+
# Check if IP contains a valid format (simple regex for an IPv4 address)
17+
if [[ $IP =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
18+
echo "$IP"
19+
return 0
20+
fi
21+
done
22+
return 1
23+
}
24+
25+
if [[ -z "${BASE_NODE_NETWORK:-}" ]]; then
26+
echo "expected BASE_NODE_NETWORK to be set" 1>&2
27+
exit 1
28+
fi
29+
30+
# wait until local execution client comes up (authed so will return 401 without token)
31+
until [ "$(curl -s --max-time 10 --connect-timeout 5 -w '%{http_code}' -o /dev/null "${BASE_NODE_L2_ENGINE_RPC/ws/http}")" -eq 401 ]; do
32+
echo "waiting for execution client to be ready"
33+
sleep 5
34+
done
35+
36+
# public-facing P2P node, advertise public IP address
37+
if PUBLIC_IP=$(get_public_ip); then
38+
echo "fetched public IP is: $PUBLIC_IP"
39+
else
40+
echo "Could not retrieve public IP."
41+
exit 8
42+
fi
43+
export BASE_NODE_P2P_ADVERTISE_IP=$PUBLIC_IP
44+
45+
echo "$BASE_NODE_L2_ENGINE_AUTH_RAW" > "$BASE_NODE_L2_ENGINE_AUTH"
46+
47+
exec ./base-consensus

consensus-entrypoint

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/bash
2+
set -eu
3+
4+
if [ "${USE_BASE_CONSENSUS:-false}" = "true" ]; then
5+
if [ -f ./base-consensus-entrypoint ]; then
6+
echo "Using Base Client"
7+
exec ./base-consensus-entrypoint
8+
else
9+
echo "Base client is not supported for this node type"
10+
exit 1
11+
fi
12+
else
13+
echo "Using OP Node"
14+
exec ./op-node-entrypoint
15+
fi

docker-compose.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ services:
1313
command: ["bash", "./execution-entrypoint"]
1414
volumes:
1515
- ${HOST_DATA_DIR}:/data
16+
environment:
17+
- USE_BASE_CONSENSUS=${USE_BASE_CONSENSUS:-false}
1618
env_file:
1719
- ${NETWORK_ENV:-.env.mainnet} # Use .env.mainnet by default, override with .env.sepolia for testnet
1820
node:
@@ -28,6 +30,8 @@ services:
2830
- "9222:9222/udp" # P2P UDP
2931
- "7300:7300" # metrics
3032
- "6060:6060" # pprof
31-
command: ["bash", "./op-node-entrypoint"]
33+
command: ["bash", "./consensus-entrypoint"]
34+
environment:
35+
- USE_BASE_CONSENSUS=${USE_BASE_CONSENSUS:-false}
3236
env_file:
3337
- ${NETWORK_ENV:-.env.mainnet} # Use .env.mainnet by default, override with .env.sepolia for testnet

geth/Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,5 +39,6 @@ COPY --from=geth /app/build/bin/geth ./
3939
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
4040
COPY geth/geth-entrypoint ./execution-entrypoint
4141
COPY op-node-entrypoint .
42+
COPY consensus-entrypoint .
4243

4344
CMD ["/usr/bin/supervisord"]

geth/geth-entrypoint

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ fi
4848

4949
if [ "${HOST_IP:+x}" = x ]; then
5050
ADDITIONAL_ARGS="$ADDITIONAL_ARGS --nat=extip:$HOST_IP"
51-
fi
51+
fi
5252

5353
exec ./geth \
5454
--datadir="$GETH_DATA_DIR" \

nethermind/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ COPY versions.env /tmp/versions.env
2525
RUN . /tmp/versions.env && git clone $NETHERMIND_REPO --branch $NETHERMIND_TAG --single-branch . && \
2626
git switch -c $NETHERMIND_TAG && \
2727
bash -c '[ "$(git rev-parse HEAD)" = "$NETHERMIND_COMMIT" ]'
28-
28+
2929
RUN TARGETARCH=${TARGETARCH#linux/} && \
3030
arch=$([ "$TARGETARCH" = "amd64" ] && echo "x64" || echo "$TARGETARCH") && \
3131
echo "Using architecture: $arch" && \
@@ -46,5 +46,6 @@ COPY --from=op /app/op-node/bin/op-node ./
4646
COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf
4747
COPY nethermind/nethermind-entrypoint ./execution-entrypoint
4848
COPY op-node-entrypoint .
49+
COPY consensus-entrypoint .
4950

5051
CMD ["/usr/bin/supervisord"]

0 commit comments

Comments
 (0)