-
git cloneし、ディレクトリに移動します
git clone https://github.com/takesaki/ethereum-staking.git cd ethereum-staking/node
-
EL/CL間通信時の認証情報(jwt secret)ファイル
jwtsecret
を作成しますopenssl rand -hex 32 | tr -d "\n" > "jwtsecret"
作成した
jwtsecret
はBeacon Nodeからも参照されます
- 以下のコマンドで起動します
docker compose --env-file mainnet.env up -d
- 起動した後はエラーログがないか確認しておきましょう
docker compose logs -f
conf.d/eth2/beacon.yaml
のcheckpoint-sync-url
を変更- 起動オプションを変更(mainnet.envをgoerli.envに)
docker compose --env-file goerli.env up -d
- 4000番ポートにvalidatorはアクセスしてきますFWなどは開けておきましょう
各コンテナにexec
するのは、監査的に良くないのでアクセス用のコンテナを建てる
docker run --rm -it \
--network node_default \
ethereum/client-go:stable \
attach http://geth:8545
取得したConsoleで色々試せます
- Sync状況
eth.syncing
結果がfalseならSyncできてる - peer接続数
net.peerCount
docker run --rm -it \
--network node_default \
takesaki/toolbox
- ELとの接続状態を確認
curl -s http://beacon:3500/eth/v1/node/syncing | jq
- BeaconCahinの状態を確認
curl -s http://beacon:8080/healthz
- Consensus Client同期が終わらない
Execution Clientが先に同期完了している必要があるため、Execution Client起動直後はしばらく時間がかかります