Skip to content

Commit 425ad0c

Browse files
authored
add reth EL and teku/lodestar CL (#163)
* add reth EL, teku and lodestar CL * update volume names
1 parent 85a95a8 commit 425ad0c

5 files changed

Lines changed: 154 additions & 1 deletion

File tree

.env.sample.holesky

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,13 @@ NETWORK=holesky
66

77
# Execution layer client to be used in a DV setup. Uncomment only the desired client.
88
EL=el-nethermind
9+
#EL=el-reth
910

1011
# Consensus layer client to be used in a DV setup. Uncomment only the desired client.
1112
CL=cl-lighthouse
1213
#CL=cl-grandine
14+
#CL=cl-teku
15+
#CL=cl-lodestar
1316

1417
# Validator client to be used in a DV setup. Uncomment only the desired client.
1518
VC=vc-lodestar
@@ -42,6 +45,10 @@ COMPOSE_FILE=compose-el.yml:compose-cl.yml:compose-vc.yml:compose-mev.yml:docker
4245
# See available tags https://hub.docker.com/r/nethermind/nethermind/tags
4346
#NETHERMIND_VERSION=
4447

48+
# Reth docker container image version.
49+
# See available tags https://github.com/paradigmxyz/reth/pkgs/container/reth
50+
#RETH_VERSION=
51+
4552
######### Consensus Layer Config #########
4653

4754
# CL beacon node host exposed ports.
@@ -62,6 +69,14 @@ LIDO_EXECUTION_LAYER_REWARDS_ADDRESS=0xE73a3602b99f1f913e72F8bdcBC235e206794Ac8
6269
# See available tags https://hub.docker.com/r/sifrai/grandine/tags.
6370
#CL_GRANDINE_VERSION=
6471

72+
# Teku beacon node docker container image version.
73+
# See available tags https://hub.docker.com/r/consensys/teku/tags
74+
#CL_TEKU_VERSION=
75+
76+
# Lodestar beacon node docker container image version.
77+
# See available tags https://hub.docker.com/r/chainsafe/lodestar/tags
78+
#CL_LODESTAR_VERSION=
79+
6580
######### Validator Client Config #########
6681

6782
# Override prometheus metrics port for validator client.
@@ -220,8 +235,11 @@ LIDODVEXIT_EXIT_EPOCH=256
220235
# Uncomment these if you have log exporting with Promtail
221236
# and want to disable log export on a particular container.
222237
#EL_NETHERMIND_PROMTAIL_MONITORED=false
238+
#EL_RETH_PROMTAIL_MONITORED=false
223239
#CL_LIGHTHOUSE_PROMTAIL_MONITORED=false
224240
#CL_GRANDINE_PROMTAIL_MONITORED=false
241+
#CL_TEKU_PROMTAIL_MONITORED=false
242+
#CL_LODESTAR_PROMTAIL_MONITORED=false
225243
#CHARON_PROMTAIL_MONITORED=false
226244
#VC_LODESTAR_PROMTAIL_MONITORED=false
227245
#VC_NIMBUS_PROMTAIL_MONITORED=false

.env.sample.hoodi

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,13 @@ NETWORK=hoodi
66

77
# Execution layer client to be used in a DV setup. Uncomment only the desired client.
88
EL=el-nethermind
9+
#EL=el-reth
910

1011
# Consensus layer client to be used in a DV setup. Uncomment only the desired client.
1112
CL=cl-lighthouse
1213
#CL=cl-grandine
14+
#CL=cl-teku
15+
#CL=cl-lodestar
1316

1417
# Validator client to be used in a DV setup. Uncomment only the desired client.
1518
VC=vc-lodestar
@@ -42,6 +45,10 @@ COMPOSE_FILE=compose-el.yml:compose-cl.yml:compose-vc.yml:compose-mev.yml:docker
4245
# See available tags https://hub.docker.com/r/nethermind/nethermind/tags
4346
#NETHERMIND_VERSION=
4447

48+
# Reth docker container image version.
49+
# See available tags https://github.com/paradigmxyz/reth/pkgs/container/reth
50+
#RETH_VERSION=
51+
4552
######### Consensus Layer Config #########
4653

4754
# CL beacon node host exposed ports.
@@ -62,6 +69,14 @@ LIDO_EXECUTION_LAYER_REWARDS_ADDRESS=0xE73a3602b99f1f913e72F8bdcBC235e206794Ac8
6269
# See available tags https://hub.docker.com/r/sifrai/grandine/tags.
6370
#CL_GRANDINE_VERSION=
6471

72+
# Teku beacon node docker container image version.
73+
# See available tags https://hub.docker.com/r/consensys/teku/tags
74+
#CL_TEKU_VERSION=
75+
76+
# Lodestar beacon node docker container image version.
77+
# See available tags https://hub.docker.com/r/chainsafe/lodestar/tags
78+
#CL_LODESTAR_VERSION=
79+
6580
######### Validator Client Config #########
6681

6782
# Override prometheus metrics port for validator client.
@@ -226,8 +241,11 @@ LIDODVEXIT_EXIT_EPOCH=256
226241
# Uncomment these if you have log exporting with Promtail
227242
# and want to disable log export on a particular container.
228243
#EL_NETHERMIND_PROMTAIL_MONITORED=false
244+
#EL_RETH_PROMTAIL_MONITORED=false
229245
#CL_LIGHTHOUSE_PROMTAIL_MONITORED=false
230246
#CL_GRANDINE_PROMTAIL_MONITORED=false
247+
#CL_TEKU_PROMTAIL_MONITORED=false
248+
#CL_LODESTAR_PROMTAIL_MONITORED=false
231249
#CHARON_PROMTAIL_MONITORED=false
232250
#VC_LODESTAR_PROMTAIL_MONITORED=false
233251
#VC_NIMBUS_PROMTAIL_MONITORED=false

.env.sample.mainnet

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,13 @@ NETWORK=mainnet
66

77
# Execution layer client to be used in a DV setup. Uncomment only the desired client.
88
EL=el-nethermind
9+
#EL=el-reth
910

1011
# Consensus layer client to be used in a DV setup. Uncomment only the desired client.
1112
CL=cl-lighthouse
1213
#CL=cl-grandine
14+
#CL=cl-teku
15+
#CL=cl-lodestar
1316

1417
# Validator client to be used in a DV setup. Uncomment only the desired client.
1518
VC=vc-lodestar
@@ -42,6 +45,10 @@ COMPOSE_FILE=compose-el.yml:compose-cl.yml:compose-vc.yml:compose-mev.yml:docker
4245
# See available tags https://hub.docker.com/r/nethermind/nethermind/tags
4346
#NETHERMIND_VERSION=
4447

48+
# Reth docker container image version.
49+
# See available tags https://github.com/paradigmxyz/reth/pkgs/container/reth
50+
#RETH_VERSION=
51+
4552
######### Consensus Layer Config #########
4653

4754
# CL beacon node host exposed ports.
@@ -62,6 +69,14 @@ LIDO_EXECUTION_LAYER_REWARDS_ADDRESS=0x388C818CA8B9251b393131C08a736A67ccB19297
6269
# See available tags https://hub.docker.com/r/sifrai/grandine/tags.
6370
#CL_GRANDINE_VERSION=
6471

72+
# Teku beacon node docker container image version.
73+
# See available tags https://hub.docker.com/r/consensys/teku/tags
74+
#CL_TEKU_VERSION=
75+
76+
# Lodestar beacon node docker container image version.
77+
# See available tags https://hub.docker.com/r/chainsafe/lodestar/tags
78+
#CL_LODESTAR_VERSION=
79+
6580
######### Validator Client Config #########
6681

6782
# Override prometheus metrics port for validator client.
@@ -220,8 +235,11 @@ LIDODVEXIT_EXIT_EPOCH=194048
220235
# Uncomment these if you have log exporting with Promtail
221236
# and want to disable log export on a particular container.
222237
#EL_NETHERMIND_PROMTAIL_MONITORED=false
238+
#EL_RETH_PROMTAIL_MONITORED=false
223239
#CL_LIGHTHOUSE_PROMTAIL_MONITORED=false
224240
#CL_GRANDINE_PROMTAIL_MONITORED=false
241+
#CL_TEKU_PROMTAIL_MONITORED=false
242+
#CL_LODESTAR_PROMTAIL_MONITORED=false
225243
#CHARON_PROMTAIL_MONITORED=false
226244
#VC_LODESTAR_PROMTAIL_MONITORED=false
227245
#VC_NIMBUS_PROMTAIL_MONITORED=false

compose-cl.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,3 +72,69 @@ services:
7272
- ./data/lighthouse:/opt/app/beacon # Keep data in lighthouse and not cl-lighthouse for backwards compatibility
7373
- ./jwt:/opt/jwt
7474
networks: [dvnode]
75+
76+
# _ _
77+
# | |_ ___| | ___ _
78+
# | __/ _ \ |/ / | | |
79+
# | || __/ <| |_| |
80+
# \__\___|_|\_\\__,_|
81+
82+
cl-teku:
83+
profiles: [cl-teku]
84+
image: consensys/teku:${VC_VERSION:-25.7.1}
85+
restart: unless-stopped
86+
labels:
87+
- "promtail-monitored=${CL_TEKU_PROMTAIL_MONITORED:-true}"
88+
command: |
89+
--network=${NETWORK}
90+
--checkpoint-sync-url=${LIGHTHOUSE_CHECKPOINT_SYNC_URL}
91+
--ee-endpoint=http://${EL}:8551
92+
--ee-jwt-secret-file=/jwt/jwt.hex
93+
--data-base-path=/opt/teku/data
94+
--builder-endpoint=http://${MEV}:18550
95+
--rest-api-enabled=true
96+
--rest-api-interface=0.0.0.0
97+
--rest-api-port=5052
98+
--rest-api-host-allowlist="*"
99+
--metrics-enabled=true
100+
--metrics-interface=0.0.0.0
101+
--metrics-port=5054
102+
--metrics-host-allowlist="*"
103+
--validators-proposer-default-fee-recipient=${LIDO_EXECUTION_LAYER_REWARDS_ADDRESS:-0x388C818CA8B9251b393131C08a736A67ccB19297}
104+
volumes:
105+
- ./data/cl-teku:/opt/teku/data
106+
- ./jwt:/jwt:ro
107+
networks: [dvnode]
108+
109+
# _ _ _
110+
# | | ___ __| | ___ ___| |_ __ _ _ __
111+
# | |/ _ \ / _` |/ _ \/ __| __/ _` | '__|
112+
# | | (_) | (_| | __/\__ \ || (_| | |
113+
# |_|\___/ \__,_|\___||___/\__\__,_|_|
114+
115+
cl-lodestar:
116+
profiles: [cl-lodestar]
117+
image: chainsafe/lodestar:${VC_VERSION:-v1.33.0}
118+
restart: unless-stopped
119+
labels:
120+
- "promtail-monitored=${CL_LODESTAR_PROMTAIL_MONITORED:-true}"
121+
command: |
122+
beacon
123+
--network=${NETWORK}
124+
--checkpointSyncUrl=${LIGHTHOUSE_CHECKPOINT_SYNC_URL}
125+
--execution.urls=http://${EL}:8551
126+
--jwt-secret=/jwt/jwt.hex
127+
--dataDir=/opt/lodestar/data
128+
--builder
129+
--builder.url=http://${MEV}:18550
130+
--rest
131+
--rest.address=0.0.0.0
132+
--rest.port=5052
133+
--metrics
134+
--metrics.address=0.0.0.0
135+
--metrics.port=5054
136+
--suggestedFeeRecipient=${LIDO_EXECUTION_LAYER_REWARDS_ADDRESS:-0x388C818CA8B9251b393131C08a736A67ccB19297}
137+
volumes:
138+
- ./data/cl-lodestar:/opt/lodestar/data
139+
- ./jwt:/jwt:ro
140+
networks: [dvnode]

compose-el.yml

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ services:
2222
- "promtail-monitored=${EL_NETHERMIND_PROMTAIL_MONITORED:-true}"
2323
command: |
2424
--config=${NETWORK}
25-
--datadir=data
25+
--data-dir=/nethermind/data
2626
--HealthChecks.Enabled=true
2727
--JsonRpc.Enabled=true
2828
--JsonRpc.JwtSecretFile="/root/jwt/jwt.hex"
@@ -39,3 +39,36 @@ services:
3939
volumes:
4040
- ./data/nethermind:/nethermind/data
4141
- ./jwt:/root/jwt
42+
43+
# _ _
44+
# _ __ ___| |_| |__
45+
# | '__/ _ \ __| '_ \
46+
# | | | __/ |_| | | |
47+
# |_| \___|\__|_| |_|
48+
49+
el-reth:
50+
profiles: [el-reth]
51+
image: ghcr.io/paradigmxyz/reth:${EL_RETH_VERSION:-v1.6.0}
52+
restart: unless-stopped
53+
ports:
54+
- ${EL_PORT_P2P:-30303}:30303/tcp # P2P TCP
55+
- ${EL_PORT_P2P:-30303}:30303/udp # P2P UDP
56+
- ${EL_IP_HTTP:-127.0.0.1}:${EL_PORT_HTTP:-8545}:8545 # JSON-RPC
57+
- ${EL_IP_ENGINE:-127.0.0.1}:${EL_PORT_ENGINE:-8551}:8551 # ENGINE-API
58+
labels:
59+
- "promtail-monitored=${EL_RETH_PROMTAIL_MONITORED:-true}"
60+
command: |
61+
node
62+
--chain=${NETWORK}
63+
--datadir=/reth/data
64+
--authrpc.jwtsecret="/root/jwt/jwt.hex"
65+
--authrpc.addr=0.0.0.0
66+
--authrpc.port=8551
67+
--http
68+
--http.addr=0.0.0.0
69+
--http.port=8545
70+
--metrics=0.0.0.0:8008
71+
networks: [dvnode]
72+
volumes:
73+
- ./data/reth:/reth/data
74+
- ./jwt:/root/jwt

0 commit comments

Comments
 (0)