为了账号安全,请及时绑定邮箱和手机立即绑定

Mac以太坊构建本地私有网络,解决钱包无法连接本地私有库

标签:
区块链

先上一张搭建好的私有链,Ethereum Wallet连接后的效果图

私有链钱包

待安装系统环境

系统:macOS 10.13.2
Ethereum Wallet版本:0.93
Geth版本:
依赖:

  • 1、Geth环境

Ethereum

如果你本地还没搭建好Geth环境,可以查看我的另一篇文章
https://www.jianshu.com/p/1d2395da5ed2


开始搭建私有网络

创建配置文件

如果需要创建环境,需要新建一个文件夹来放相应的私有网络文件。
在文件里里面创建 genesis.json 文件

文件内容如下:

{
  "config": {
        "chainId": 15,
        "homesteadBlock": 0,
        "eip155Block": 0,
        "eip158Block": 0
    },
    "coinbase" : "0x0000000000000000000000000000000000000000",
    "difficulty" : "0x40000",
    "extraData" : "",
    "gasLimit" : "0xffffffff",
    "nonce" : "0x0000000000000042",
    "mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
    "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
    "timestamp" : "0x00",
    "alloc": { }
}

这里面的相应参数做啥的,这不是这篇文章介绍的重点,有兴趣的可以网上查下。

初始化私有链

初始化命令 geth init ./genesis.json --datadir "./chain"

--datadir 参数是指定数据存放文件夹。

创建完后应该是这样的。

启动私有链

到刚才创建的私有链目录下,执行启动命令 geth --datadir "./chain" --nodiscover console 2>>eth_output.log

启动效果图

这个时候,在私有链目录下会多出一个eth_output.log文件,启动日志啥的都在里面。

这个时候你的私有链就创建完成了。


接下来介绍 Ethereum Wallet 怎么连接刚创建的私有链了

当你没创建私有链时打开 Ethereum Wallet 应该是没问题的,如果你此时启动着私有链不改端口的情况下,打开 Ethereum Wallet 会报无法连接节点的错。

Fatal: Error starting protocol stack: listen tcp :30303: bind: address already in use

我目前遇到的报错情况如下:

这个错是由于你刚起的私有链占用了 30303 端口,以太坊启动也需要使用30303端口

解决方案

解决这个问题的思路是:
通过命令行方式启动让Ethereum Wallet,添加参数让他和刚起的私有链同用一个ipc。

打开私有链文件夹下的日志文件 eth_output.log,大概在16行左右有个IPC的URL地址。

命令行启动Ethereum Wallet命令:
./Ethereum\ Wallet.app/Contents/MacOS/Ethereum\ Wallet --rpc "私有链ipc地址"

这样启动Ethereum Wallet 链接的仓库就是私有链了。

私有链钱包

如果有疑问欢迎留言。

点击查看更多内容
8人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
全栈工程师
手记
粉丝
1.6万
获赞与收藏
399

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消