Skip to content

Latest commit

 

History

History
216 lines (169 loc) · 6.63 KB

README.md

File metadata and controls

216 lines (169 loc) · 6.63 KB

geth+lighthouse

停止两个小时之后重新启动,正常出块
停止六个小时之后重新启动,正常出块

部署环境

进入到geth-lighthouse目录

cd geth-lighthouse

生成创世信息

make generate_genesis_data

初始化geth

make init_geth_genesis

运行

./first_start

停止

./stop

重启

./restart

删除容器并清除数据

make down_and_clean

chainId修改

chainId的修改需要修改两个位置

  1. 修改genesis_data/values.env中的CHAIN_ID
  2. 修改docker-compose.yamlservice.geth--networkid=

重新生成validator-keys

使用工具eth2-val-tools生成validator-keys, 首选需要buildeth2-val-tools

make eth2_val_tools

生成validator-keys

make reset_validator_keys

注: genesis_data/reset_validator_keys.sh中的source-mnemonic要与genesis_data/values.env中的EL_AND_CL_MNEMONIC一致

带着浏览器启动

区块链浏览器: blocksout
blob浏览器: blobscan
注: blocksout也是支持blob查看的,暂未配置成功,且blockout的constract verify功能暂未配置成功
进入到geth-lighthouse目录

cd geth-lighthouse

注意事项

机器架构问题

blocksout目前只有linux/amd64平台的镜像

docker-compose-explorer.yaml中的service.blockscout-frontend下的environment环境变量中,NEXT_PUBLIC_API_HOSTNEXT_PUBLIC_STATS_API_HOSTNEXT_PUBLIC_APP_HOSTNEXT_PUBLIC_VISUALIZE_API_HOST需要配置为宿主机的IP

service.blockscout-frontend下的environment环境变量中NEXT_PUBLIC_API_PORTNEXT_PUBLIC_STATS_API_HOSTNEXT_PUBLIC_VISUALIZE_API_HOST中的端口配置需要和blockscout-proxy中ports配置一样,这三个端口是必须暴露的,这三个端口是blocksout的前端页面发送的请求,所以blocksout-frontend需要配置所在宿主机的ip

gcmode=archive

默认启动的链节点并未配置--gcmode=archive, 即并不会保存交易的历史状态,当交易发送之后一段时间后 将无法获取交易对应的trace信息。

需要修改docker-compose.ymlgethcommand下添加参数--gcmode=archive, 如下:

services:
  geth:
    ...
    command:
      ...
      - --state.scheme=path
      - --syncmode=full
      - --gcmode=archive

如上配置会报错:Fatal: Failed to register the Ethereum service: incompatible state scheme, stored: path, provided: hash

--state.scheme=path是比较新的一种存储模式,暂时无法与--gcmode=archive同时使用,需将--state.scheme=path修改为--state.scheme=hash, 可参考文档:https://blog.ethereum.org/2023/09/12/geth-v1-13-0

需修改配置Makefileinit_geth_genesis, 添加参数--state.scheme=hash, 如下:

    init_geth_genesis:
	@echo "Init geth gensis"
	@docker run --rm -it \
	-v $(PWD_DIR)/data/execution-data:/execution-data \
	-v $(PWD_DIR)/genesis_data/el-cl-genesis-data:/el-cl-genesis-data \
	ethereum/client-go:latest \
	--state.scheme=hash \
	--datadir=/execution-data \
	init /el-cl-genesis-data/network-configs/genesis.json

修改docker-compose.yml, 如下:

services:
  geth:
    ...
    command:
      ...
      - --state.scheme=hash
      - --syncmode=full
      - --gcmode=archive

生成创世信息

make generate_genesis_data

初始化geth

make init_geth_genesis

运行

make first_start_with_explorer

停止

make stop_with_explorers

重启

make restart_with_explorer

删除容器并清除数据

make down_and_clean_with_explorer

geth RPC端口

geth rpc端口: 8545

区块链浏览器访问

浏览器访问:http://192.168.17.11:18000/

blobscan访问

浏览器访问:http://192.168.17.11:13000/

测试账户

地址:0x8943545177806ED17B9F23F0a21ee5948eCaa776
私钥:bcdf20249abf0ed6d944c0288fad489e33f66b3960d9e6229c1cd214ed3bbe31

地址:0xE25583099BA105D9ec0A67f5Ae86D90e50036425
私钥:39725efee3fb28614de3bacaffe4cc4bd8c436257e2c8bb887c4b5c4be45e76d

地址:0x614561D2d143621E126e87831AEF287678B442b8
私钥:53321db7c1e331d93a11a41d16f004d7ff63972ec8ec7c25db329728ceeb1710

地址:0xf93Ee4Cf8c6c40b329b0c0626F28333c132CF241
私钥:ab63b23eb7941c1251757e24b3d2350d2bc05c3c388d06f8fe6feafefb1e8c70

地址:0x802dCbE1B1A97554B4F50DB5119E37E8e7336417
私钥:5d2344259f42259f82d2c140aa66102ba89b57b4883ee441a8b312622bd42491

地址:0xAe95d8DA9244C37CaC0a3e16BA966a8e852Bb6D6
私钥:27515f805127bebad2fb9b183508bdacb8c763da16f54e0678b16e8f28ef3fff

地址:0x2c57d1CFC6d5f8E4182a56b4cf75421472eBAEa4
私钥:7ff1a4c1d57e5e784d327c4c7651e952350bc271f156afb3d00d20f5ef924856

地址:0x741bFE4802cE1C4b5b00F9Df2F5f179A1C89171A
私钥:3a91003acaf4c21b3953d94fa4a6db694fa69e5242b2e37be05dd82761058899

地址:0xc3913d4D8bAb4914328651C2EAE817C8b78E1f4c
私钥:bb1d0f125b4fb2bb173c318cdead45468474ca71474e2247776b2b4c0fa2d3f5

地址:0x65D08a056c17Ae13370565B04cF77D2AfA1cB9FA
私钥:850643a0224065ecce3882673c21f56bcf6eef86274cc21cadff15930b59fc8c

地址:0x3e95dFbBaF6B348396E6674C7871546dCC568e56
私钥:94eb3102993b41ec55c241060f47daa0f6372e2e3ad7e91612ae36c364042e44

地址:0x5918b2e647464d4743601a865753e64C8059Dc4F
私钥:daf15504c22a352648a71ef2926334fe040ac1d5005019e09f6c979808024dc7

地址:0x589A698b7b7dA0Bec545177D3963A2741105C7C9
私钥:eaba42282ad33c8ef2524f07277c03a776d98ae19f581990ce75becb7cfa1c23

地址:0x4d1CB4eB7969f8806E2CaAc0cbbB71f88C8ec413
私钥:3fd98b5187bf6526734efaa644ffbb4e3670d66f5d0268ce0323ec09124bff61

地址:0xF5504cE2BcC52614F121aff9b93b2001d92715CA
私钥:5288e2f440c7f0cb61a9be8afdeb4295f786383f96f5e35eb0c94ef103996b64

地址:0xF61E98E7D47aB884C244E39E031978E33162ff4b
私钥:f296c7802555da2a5a662be70e078cbd38b44f96f8615ae529da41122ce8db05

地址:0xf1424826861ffbbD25405F5145B5E50d0F1bFc90
私钥:bf3beef3bd999ba9f2451e06936f0423cd62b815c9233dd3bc90f7e02a1e8673

地址:0xfDCe42116f541fc8f7b0776e2B30832bD5621C85
私钥:6ecadc396415970e91293726c3f5775225440ea0844ae5616135fd10d66b5954

地址:0xD9211042f35968820A3407ac3d80C725f8F75c14
私钥:a492823c3e193d6c595f37a18e3c06650cf4c74558cc818b16130b293716106f

地址:0xD8F3183DEF51A987222D845be228e0Bbb932C222
私钥:c5114526e042343c6d1899cad05e1c00ba588314de9b96929914ee0df18d46b2