Mac上以太坊私有链搭建流程

(1)在控制台输入以下命令3次,可以创建3个账号

geth account new

(2)编写创世块文件,在根目录~/下创建test-genesis.json文件。注意可以通过设置alloc中的账号地址,给你刚刚申请的公钥分配足够多的钱。

{

    "nonce": "0x0000000000000042",

    "difficulty": "0x1",

    "alloc": {

        "3ae88fe370c39384fc16da2c9e768cf5d2495b48": {

            "balance": "20000009800000000000000000000"

        },

            "81063419f13cab5ac090cd8329d8fff9feead4a0": {

                "balance": "20000009800000000000000000000"

            },

            "9da26fc2e1d6ad9fdd46138906b0104ae68a65d8": {

            "balance": "20000009800000000000000000000"

        },

            "bd2d69e3e68e1ab3944a865b3e566ca5c48740da": {

                "balance": "20000009800000000000000000000"

            },

            "ca9f427df31a1f5862968fad1fe98c0a9ee068c4": {

                "balance": "20000009800000000000000000000"

            }

    },

    "mixhash": "0x0000000000000000000000000000000000000000000000000000000000000000",

    "coinbase": "0x0000000000000000000000000000000000000000",

    "timestamp": "0x00",

    "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000",

    "extraData": "0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa",

    "gasLimit": "0xb2d05e00"

}

(3)初始化创始块(注意,我的Ethereum是安装在/Users/chenyufeng/Library目录下的)

geth --datadir “/Users/chenyufeng/Library/Ethereum" init ~/test-genesis.json

(4)配置自动解锁账号的脚本

进入/Users/chenyufeng/Library/Ethereum,创建password文件,并在该文件中,输入刚刚创建的每个账号对应的密码,每个密码一行,只需要输入密码即可。

(5)编写以太坊启动脚本

创建启动脚本文件private_blockchain.sh文件,并在文件中配置如下内容。这里启动私有链后,默认会开启控制台。

geth --rpc --rpcaddr="0.0.0.0" --rpccorsdomain="*" --unlock '0,1,2' --password /Users/chenyufeng/Library/Ethereum/password   --nodiscover --maxpeers '5' --networkid '1234574' --datadir '/Users/chenyufeng/Library/Ethereum'  console

目前最新的private_blockchain.sh文件修改如下:因为要进行IPC访问:

geth --rpc --rpcapi="db,eth,net,web3,personal,web3" --rpcaddr="0.0.0.0" --rpccorsdomain="*" --unlock '0' --password ~/Library/Ethereum/password   --nodiscover --maxpeers '5' --networkid '1234574' --datadir '~/Library/Ethereum'  console

(6)以后每次启动geth节点时,只需要通过以下命令即可:

./private_blockchain.sh

 

你可能感兴趣的:(区块链,区块链开发技术分享)