主页 > imtoken钱包苹果版 > CentOS 7.5 搭建以太坊私链(联盟链)和区块链浏览器
CentOS 7.5 搭建以太坊私链(联盟链)和区块链浏览器
环境:
操作系统是win10,虚拟了两个centos7.5系统,cpu有4核,内存8G。 本文中将使用node1和node2来表示虚拟机节点1和虚拟机节点2。
本文将搭建2个节点,node1搭建一个区块链浏览器。
环境准备
节点1构建
苏根
关闭防火墙
systemctl 禁用防火墙
修改/etc/selinux/config文件
将 SELINUX=enforcing 更改为 SELINUX=disabled
重启
百胜安装git
wget
tar -zxvf go1.15.linux-amd64.tar.gz
mv 去/usr/本地/
vi /etc/配置文件
导出 GOROOT=/usr/local/go
导出 PATH=$PATH:$GOROOT/bin
源/etc/配置文件
卷曲-sL | 须藤庆典 -
百胜安装nodejs
编译以太坊源代码
wget
解压缩
焦油-zxvf v1.9.24.tar.gz
编译以太坊
cd go-ethereum-1.9.24
让所有
设置环境变量
echo 'export PATH=$PATH:/root/go-ethereum-1.9.24/build/bin' >> /etc/profile
源/etc/配置文件
CD~
vi创世.json
输入以下配置
{
“配置”:{
“链号”:1234,
“家园块”:0,
“eip150块”:0,
"eip150Hash": "0x00000000000000000000000000000000000000000000000000000000000000000",
“eip155块”:0,
“eip158Block”:0,
“拜占庭块”:0,
“君士坦丁堡街区”:0,
“圣彼得堡街区”:0,
“伊斯坦布尔区块”:0,
“以太坊”:{}
},
“随机数”:“0x0”,
“时间戳”:“0x5ddf8f3e”,
“额外数据”:“0x00000000000000000000000000000000000000000000000000000000000000000”,
“gasLimit”:“0x47b760”以太坊浏览器查询,
“难度”:“0x400”,
“混合哈希”:“0x0000000000000000000000000000000000000000000000000000000000000000”,
“币库”:“0x0000000000000000000000000000000000000000”,
“分配”:{
"在这里填写需要初始eth的钱包地址" : {"balance" : "这里是你要给之前地址多少wei的初始eth余额"}
},
“数字”:“0x0”,
“gasUsed”:“0x0”,
“parentHash”:“0x000000000000000000000000000000000000000000000000000000000000000000”
}
退出并保存文件
初始化
geth --datadir "/root/ethereumData" init /root/genesis.json
chainID 链的ID。 使用geth启动区块链时,还需要指定一个网络参数。 只有network、chainID、创世块配置都一样的时候,才是同一条链。
alloc 表示初始资产分配。 当区块链产生时,这些账户被预先赋予一定数量的 WEI(不是 ETH)。
nonce是一个预先确定的随机数,是一个与PoW机制相关的值。
难度定义了每次执行挖掘时最终确定随机数的难度。 私链推荐难度较低,否则需要GPU挖矿。
mixhash 是与 PoW 机制相关的一个值。
每挖出一个区块,Coinbase 就会获得奖励。 该值指定奖励默认给哪个账户。 实际上,我们会在每次挖矿开始前指定miner.setEtherbase(UserAddress),一般会奖励自己timestamp时间戳,指定创世块开始的时间。
parentHash 在区块链中,块是相连的,parentHash 指定了本块的前一个块Hash。 对于创世块,parentHash 为 0。
extraData 在 Clique 机制下,新区块只能由签名者(singers)挖掘。 在区块链的成长过程中,可以通过投票选举或免除签名者。 当区块链开始运行时,需要定义一个初始歌手。
gasLimit 指定区块链中gas的上限。 建议私链多一些以太坊浏览器查询,这样可以在交易中打包更大的数据。
geth --networkid 1234 --nodiscover --datadir /root/ethereumData --rpccorsdomain "*" --rpc --rpcapi "admin,eth,debug,miner,net,txpool,personal,web3" --rpcaddr 0.0.0.0 --rpcport 8545 --port 30001 console 2 --dev.period 1 --allow-insecure-unlock
--nodiscover 关闭节点发现。
--allow-insecure-unlock 启用账户解锁,如果账户未启用,账户将不会解锁转账。
个人的。 新的帐户密码')
您可以再创建多个账户,第一个默认为挖矿账户。
geth启动成功后,会输出节点信息,也可以通过admin.nodeInfo查看,如下:
enode://73f68dbed3206fa341919a057cd583cdceeaee9855de31bebc7c9cd347c99a30ec58ccaf882b559645e6690da3b4581258d9ce40b3e37088c99de2d851b6cdis84c@12port70.30:port0
将127.0.0.1修改为节点1的IP,记录节点信息。
miner.start()
构建以太坊区块链浏览器
CD~
混帐克隆
光盘资源管理器
使用 npm 安装 bower
npm 安装-g 凉亭-y
初始化凉亭
凉亭初始化
凉亭安装
bower 安装 --allow-root
bower 安装角度 --save-dev --allow-root
修改配置,使浏览器可以被其他机器访问
vi应用程序/app.js
修改 var eth_node_url = ':8545'; // TODO: 远程 URL 是
var eth_node_url = '8545'; // TODO: 远程 URL
vi包.json
修改“start”:“http-server ./app -a localhost -p 8000 -c-1”,为