1.準備目錄文件
默認你已經安裝了docker-compose
➜ simplenode tree -L 2
.
├── docker-compose.yaml
├── genesis.json
└── passwd
git項目地址參考
docker-compose.yaml
version: "3"
services:
simplenode:
image: ethereum/client-go:latest
container_name: simplenode
environment:
datadir: node0
command: --syncmode "fast" --verbosity=5 --nousb --networkid 150 --nodiscover --maxpeers=0 --datadir=/opt/node0 --rpc --rpcaddr=0.0.0.0 --rpcport=8545 --rpccorsdomain='*' --rpcapi=admin,db,debug,eth,miner,net,personal,shh,txpool,web3
ports:
- 8545:8545
- 30303:30303
volumes:
- .:/opt
genesis.json
{
"config": {
"chainId": 150,
"homesteadBlock": 0,
"eip150Block": 0,
"eip155Block": 0,
"eip158Block": 0,
"byzantiumBlock": 0,
"constantinopleBlock": 0,
"petersburgBlock": 0,
"istanbulBlock": 0
},
"alloc": {},
"coinbase": "0x0000000000000000000000000000000000000000",
"difficulty": "0x0200",
"extraData": "",
"gasLimit": "0x2fefd8",
"nonce": "0x0000000000000042",
"mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp": "0x00"
}
passwd
123456
2.初始化配置
在當前目錄simplenode下初始化創世區塊和創建一個賬戶。
geth init --datadir node0 genesis.json
geth account new --password passwd --datadir node0
3. 運行開始挖礦
在simplenode目錄,進入simplenode容器(命名困難症。。。)
➜ simplenode docker-compose up -d
➜ simplenode docker exec -it simplenode /bin/bash
進入geth控制檯
/ # geth attach /opt/node0 geth.ipc
#查看當前節點賬戶
> eth.accounts
#查看賬戶1的餘額(單位wei轉換爲Eth)
> web3.fromWei(eth.getBalance(eth.accounts[0]), "ether")
#設置挖礦收益賬戶
> miner.setEtherbase(eth.accounts[0])
#挖礦(第一次挖要等一陣)
> miner.start()
#停止挖礦
> miner.stop()
miner.start()的時候無聊可以另啓一個終端,在simplenode目錄查看當前DAG初始化進度。
➜ simplenode docker-compose logs -f
這樣就完成了基本的以太坊私鏈運行。