forked from eth-educators/eth-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
default.env
347 lines (312 loc) · 13.4 KB
/
default.env
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
# The settings for eth-docker are in .env, use "nano .env". Don't edit default.env itself.
# Client choice: See https://eth-docker.net/Usage/Advanced for available options
COMPOSE_FILE=teku.yml:besu.yml:deposit-cli.yml
# Set the ETH address that priority fees and MEV rewards should be sent to
FEE_RECIPIENT=
# Decide whether to connect the CL to Flashbots MEV boost, and configure the VC to register with it.
# Set MEV_BOOST to "true" for MEV boost, or any other value including empty for not using MEV boost.
# If "true" and used with a CL, it also requires :mev-boost.yml in COMPOSE_FILE
MEV_BOOST=false
# For relay information, please see https://ethstaker.cc/mev-relay-list/
MEV_RELAYS="
https://0xafa4c6985aa049fb79dd37010438cfebeb0f2bd42b115b89dd678dab0670c1de38da0c4e9138c9290a398ecd9a0b3110@boost-relay-holesky.flashbots.net,
https://0xaa58208899c6105603b74396734a6263cc7d947f444f396a90f7b7d3e65d102aec7e5e5291b27e08d02c50a050825c2f@holesky.titanrelay.xyz,
https://0x821f2a65afb70e7f2e820a925a9b4c80a159620582c1766b1b09729fec178b11ea22abb3a51f07b288be815a1a2ff516@bloxroute.holesky.blxrbdn.com
"
# Set a minimum MEV bid (e.g. 0.05), used by mev-boost.yml. If empty, no minimum is used.
MEV_MIN_BID=
# Graffiti to use for validator
GRAFFITI=🐡s in spaaaace
# Set to true to use the client's default Graffiti. Overrides GRAFFITI
DEFAULT_GRAFFITI=false
# Merged network to use. If using main net, set to mainnet.
NETWORK=holesky
# CL rapid sync via initial state/checkpoint. Please use one from https://eth-clients.github.io/checkpoint-sync-endpoints/
# Alternatively, use an already synced CL that you trust. No trailing / for Teku, please.
RAPID_SYNC_URL=https://holesky.beaconstate.info
# Doppelganger protection - set to "true" to enable. This will intentionally skip two epochs on client start, and attempt to
# detect duplicates of the validator(s) already running. Note this is NOT foolproof, though it can be useful when moving a node
DOPPELGANGER=false
# Auto-pruning Nethermind is usually safe. Set this to true to enable auto-pruning, and to anything else to disable it
AUTOPRUNE_NM=true
# Whether to use web3signer for validator keys. Setting this to "true" also requires web3signer.yml in COMPOSE_FILE
WEB3SIGNER=false
# Whether to explicitly enable IPv6 P2P. See https://ethdocker.com/Support/ipv6
# Needs to be false or true for Eth Docker to work
IPV6=false
# Directory to keep ancient/static data. In use for Reth and Geth, optional.
# If you use this, make sure to chown the directory to uid 10001
ANCIENT_DIR=
# Password for Lighthouse Siren
SIREN_PASSWORD=
# Promtail logs label, something unique like the server name
LOGS_LABEL=eth-docker
# Secure web proxy - advanced use, please see instructions
DOMAIN=example.com
CF_DNS_API_TOKEN=SECRETTOKEN
CF_ZONE_API_TOKEN=
CF_ZONE_ID=
AWS_PROFILE=myprofile
AWS_HOSTED_ZONE_ID=myzoneid
GRAFANA_HOST=grafana
SIREN_HOST=siren
PROM_HOST=prometheus
PRYSM_HOST=prysm
EE_HOST=ee
EL_HOST=el
EL_LB=el-lb
EL_WS_HOST=elws
EL_WS_LB=elws-lb
CL_HOST=cl
CL_LB=cl-lb
VC_HOST=vc
DDNS_SUBDOMAIN=grafana
DDNS_PROXY=true
# Some clients suggest adjusting to higher (or lower) peer count. Adjust here, per client
# Nimbus peer count should not be set below 70. CL_MIN_PEER_COUNT is used for Teku only.
CL_MAX_PEER_COUNT=
CL_MIN_PEER_COUNT=
# Maximum active peers for EL.
EL_MAX_PEER_COUNT=
# Beaconcha.in API key for sending client stats. Automatic for Lodestar, Lighthouse, and Teku, or with prysm-stats.yml / nimbus-stats.yml
# Specify as just the API key as found at https://beaconcha.in/user/settings#api, and give the machine name separately
BEACON_STATS_API=
BEACON_STATS_MACHINE=
# IP of the host you want to use in Docker (in case host has several IPs)
HOST_IP=
# IP address to use when host-mapping a port through *-shared.yml. Set this to 127.0.0.1 to restrict the share to localhost
SHARE_IP=
# Relays to connect charon node
OBOL_P2P_RELAYS=
# P2P ports you will forward to your staking node. Adjust here if you are
# going to use something other than defaults.
EL_P2P_PORT=30303
CL_P2P_PORT=9000
PRYSM_PORT=9000
PRYSM_UDP_PORT=9000
CL_QUIC_PORT=9001
# Some clients need a separate port for IPv6
CL_IPV6_P2P_PORT=9010
# Local grafana dashboard port. Do not expose to Internet, it is insecure http
GRAFANA_PORT=3000
# Local Siren UI port
SIREN_PORT=2443
# Prometheus port used when exposing directly on host; used for federation
PROMETHEUS_PORT=9090
# Local key manager port. Reachable only via localhost. Also doubles as Prysm web port
KEY_API_PORT=7500
# Secure web proxy port, 443 and 80 are great defaults
TRAEFIK_WEB_PORT=443
TRAEFIK_WEB_HTTP_PORT=80
# NOTE: If you configure EL_RPC_PORT or EL_WS_PORT then you should also add el-shared.yml to COMPOSE_FILE
# Execution client RPC port, important when using el-shared.yml. Insecure, do not expose to Internet.
# For Erigon, this is also the WS port
EL_RPC_PORT=8545
# Execution client WS port. Insecure, do not expose to Internet.
# Note that for Erigon, this needs to match EL_RPC_PORT *if* you use traefik, and only then
# Do not change it for Erigon and el-shared.yml
EL_WS_PORT=8546
# Erigon's torrent port. Don't make this 42070, as it will fail
ERIGON_TORRENT_PORT=42069
# Erigon's second and third P2P port, used for multiple eth/xx P2P protocols
ERIGON_P2P_PORT_2=30304
ERIGON_P2P_PORT_3=30305
# SSV Node ports
SSV_P2P_PORT=13001
SSV_P2P_PORT_UDP=12001
# SSV DKG port
SSV_DKG_PORT=3030
# OBOL Node ports
OBOL_P2P_PORT=3610
# Engine port. Only for distributed setups, this should otherwise be left alone
EE_PORT=8551
# Consensus layer REST port. Only for distributed setups, this should otherwise be left alone
CL_REST_PORT=5052
# Additional parameters for the EL client. For example, on low-memory machines,
# you may want to use it to lower Geth cache, or to increase it on high-memory machines
#EL_EXTRAS=--cache=256
EL_EXTRAS=
# Additional parameters for the CL client.
CL_EXTRAS=
# Additional parameters for the validator client.
VC_EXTRAS=
# Heap for Besu and Teku, both written in Java. Sets JAVA_OPTS to this value, for example TEKU_HEAP=-Xmx8g to set it
# to 8g. If left empty, the defaults in besu.yml and teku.yml are used.
BESU_HEAP=
TEKU_HEAP=
# Heap for Lodestar. Sets NODE_OPTIONS to this value, for example --max-old-space-size=8192.
# If left empty, the default in lodestar.yml will be used.
LODESTAR_HEAP=
# Set this to true to sync an archive node instead of pruned for both CL
# and EL. Caution that this may a) require a fresh sync and b) will
# use a lot of disk - in the case of Geth >12TB, for example.
ARCHIVE_NODE=false
# If you want debug logs, set this to debug instead of info
LOG_LEVEL=info
# JWT secret for CL:EL connection. This is created automatically by default.
# If specified manually here, this could be used to split CL and EL to different
# machines. Do not use unless you have a distributed setup like that.
JWT_SECRET=
# If you run a distributed setup, setting this to DISTRIBUTED=true
# will stop the nag screens during ./ethd update
DISTRIBUTED=
# Authenticated execution client endpoint. This default uses the execution node container.
EL_NODE=http://execution:8551
# Consensus client address. This could be comma-separated for Lighthouse, Nimbus or Teku VC clients, with failover,
# or could just be a remote consensus client URL for "validator only" setups.
CL_NODE=http://consensus:5052
# MEV-boost address. This would only be changed for Vouch setups
MEV_NODE=http://mev-boost:18550
# Used by "ethd keys", adjust this if you have multiple Eth Docker stacks connected to the same Docker bridge network
VC_ALIAS=vc
# Consensus client addresses for Charon in Obol setup
OBOL_CHARON_CL_ENDPOINTS=http://consensus:5052
# Consensus client address for Lido DV Exit and Lido Validator Ejector services in Obol setup
OBOL_CL_NODE=http://consensus:5052
# Execution client address (RPC) for Lido Validator Ejector in Obol setup
OBOL_EL_NODE=http://execution:8545
# You can set specific version targets and choose binary or compiled from source builds below,
# via "Dockerfile.binary" or "Dockerfile.source"
# These settings can be reset to defaults with "./ethd update --refresh-targets"
# The default source build targets build from the latest github tag
# Eth Docker updates its code to latest by default.
# Set a Github tag here to pin it to a version. Supported from v2.3.9.
ETH_DOCKER_TAG=
# SSV
SSV_NODE_TAG=latest
SSV_NODE_REPO=ssvlabs/ssv-node
SSV_DKG_TAG=latest
SSV_DKG_REPO=bloxstaking/ssv-dkg
# Lido OBOL
CHARON_VERSION=latest
VE_OPERATOR_ID=
VE_STAKING_MODULE_ID=
VE_LOCATOR_ADDRESS=
VE_ORACLE_ADDRESSES_ALLOWLIST=
ENABLE_DIST_ATTESTATION_AGGR=
LIDO_DV_EXIT_EXIT_EPOCH=
LIDO_DV_EXIT_VERSION=
# Commit-Boost
CB_PBS_DOCKER_TAG=latest
CB_PBS_DOCKER_REPO=ghcr.io/commit-boost/pbs
# MEV-Boost
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
MEV_SRC_BUILD_TARGET=stable
MEV_SRC_REPO=https://github.com/flashbots/mev-boost
MEV_DOCKER_TAG=latest
MEV_DOCKER_REPO=flashbots/mev-boost
MEV_DOCKERFILE=Dockerfile.binary
# Nimbus
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
NIM_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
NIM_SRC_REPO=https://github.com/status-im/nimbus-eth2
NIM_DOCKER_TAG=multiarch-latest
NIM_DOCKER_VC_TAG=multiarch-latest
NIM_DOCKER_REPO=statusim/nimbus-eth2
NIM_DOCKER_VC_REPO=statusim/nimbus-validator-client
NIM_DOCKERFILE=Dockerfile.binary
# Teku
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
TEKU_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
TEKU_SRC_REPO=https://github.com/ConsenSys/teku
TEKU_DOCKER_TAG=latest
TEKU_DOCKER_REPO=consensys/teku
TEKU_DOCKERFILE=Dockerfile.binary
# Lighthouse
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
LH_SRC_BUILD_TARGET=stable
LH_SRC_REPO=https://github.com/sigp/lighthouse
LH_DOCKER_TAG=latest
LH_DOCKER_REPO=sigp/lighthouse
LH_DOCKERFILE=Dockerfile.binary
# Lighthouse Siren
SIREN_DOCKER_TAG=latest
SIREN_DOCKER_REPO=sigmaprime/siren
# Prysm
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
PRYSM_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
PRYSM_SRC_REPO=https://github.com/prysmaticlabs/prysm
PRYSM_DOCKER_TAG=stable
PRYSM_DOCKER_VC_TAG=stable
PRYSM_DOCKER_CTL_TAG=latest
PRYSM_DOCKER_REPO=gcr.io/prysmaticlabs/prysm/beacon-chain
PRYSM_DOCKER_VC_REPO=gcr.io/prysmaticlabs/prysm/validator
PRYSM_DOCKER_CTL_REPO=gcr.io/prysmaticlabs/prysm/cmd/prysmctl
PRYSM_DOCKERFILE=Dockerfile.binary
# Lodestar
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
LS_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
LS_SRC_REPO=https://github.com/ChainSafe/lodestar
LS_DOCKER_TAG=latest
LS_DOCKER_REPO=chainsafe/lodestar
LS_DOCKERFILE=Dockerfile.binary
# Grandine
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
GRANDINE_SRC_BUILD_TARGET=master
GRANDINE_SRC_REPO=https://github.com/grandinetech/grandine
GRANDINE_DOCKER_TAG=stable
GRANDINE_DOCKER_REPO=sifrai/grandine
GRANDINE_DOCKERFILE=Dockerfile.binary
# Web3Signer
W3S_DOCKER_TAG=latest
W3S_DOCKER_REPO=consensys/web3signer
PG_DOCKER_TAG=16-bookworm
# Besu
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
BESU_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
BESU_SRC_REPO=https://github.com/hyperledger/besu
BESU_DOCKER_TAG=latest
BESU_DOCKER_REPO=hyperledger/besu
BESU_DOCKERFILE=Dockerfile.binary
# Erigon
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
ERIGON_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
ERIGON_SRC_REPO=https://github.com/ledgerwatch/erigon
ERIGON_DOCKER_TAG=latest
ERIGON_DOCKER_REPO=erigontech/erigon
ERIGON_DOCKERFILE=Dockerfile.binary
# Nethermind
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
NM_SRC_BUILD_TARGET='$(git tag --sort=-committerdate | grep -E "^[0-9]+[.][0-9]+[.][0-9]+$" | head -1)'
NM_SRC_REPO=https://github.com/NethermindEth/nethermind
NM_DOCKER_TAG=latest
NM_DOCKER_REPO=nethermind/nethermind
NM_DOCKERFILE=Dockerfile.binary
# Go-Ethereum aka Geth
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
GETH_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
GETH_SRC_REPO=https://github.com/ethereum/go-ethereum
GETH_DOCKER_TAG=stable
GETH_DOCKER_REPO=ethereum/client-go
GETH_DOCKERFILE=Dockerfile.binary
# Nimbus EL
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
NIMEL_SRC_BUILD_TARGET=master
NIMEL_SRC_REPO=https://github.com/status-im/nimbus-eth1
NIMEL_DOCKER_TAG=multiarch-latest
NIMEL_DOCKER_REPO=statusim/nimbus-eth1
NIMEL_DOCKERFILE=Dockerfile.source
# Reth
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
RETH_SRC_BUILD_TARGET=main
RETH_SRC_REPO=https://github.com/paradigmxyz/reth
RETH_DOCKER_TAG=latest
RETH_DOCKER_REPO=ghcr.io/paradigmxyz/reth
RETH_DOCKERFILE=Dockerfile.binary
# staking-deposit-cli
# SRC build target can be a tag, a branch, or a pr as "pr-ID"
DEPCLI_SRC_BUILD_TARGET='$(git describe --tags $(git rev-list --tags --max-count=1))'
DEPCLI_SRC_REPO=https://github.com/eth-educators/ethstaker-deposit-cli
DEPCLI_DOCKER_TAG=latest
DEPCLI_DOCKER_REPO=ghcr.io/eth-educators/ethstaker-deposit-cli
DEPCLI_DOCKERFILE=Dockerfile.binary
# traefik and ddns-updater
TRAEFIK_TAG=v3.2
DDNS_TAG=v2
# For the Node Dashboard, define a regex of mount points to ignore for the diskspace check.
NODE_EXPORTER_IGNORE_MOUNT_REGEX='^/(dev|proc|sys|run|var/lib/docker/.+)($|/)'
# And the Docker root so promtail scrapes logs from the right location. This is updated by ethd
DOCKER_ROOT=/var/lib/docker
# Used by ethd update - please do not adjust
ENV_VERSION=21