Ethereum以太网搭建本地开放环境简明教程

原创 2017年07月30日 23:35:18

引言: 区块链技术的风起云涌预示着一个去中心化时代的来临,ethereum技术栈是目前业界最为应用广泛的基于区块链技术的技术方案,本文将记录如何基于本地环境来搭建私有区块链的开发环境。

部署私有区块链

这个步骤在笔者之前的文章中有详细的描述,感兴趣的读者可以参照:
基于以太坊构建私有区块链网络教程指南

开发工具介绍

  • Remix(Browser-Solidity)
    基于browser的合约开放工具,官方推荐,比较简单易用

  • 其它开放工具
     - Intellj IDEA plugin
     - Vim/Emacs
     ……
    详细的可用工具,可以访问: Available Solidity Integrations

安装Remix

官方地址: https://github.com/ethereum/browser-solidity
安装前置条件: nodejs/npm
具体安装的教程,可以从网路上查找各类教程。
笔者本机的配置信息如下:
这里写图片描述

基本的安装步骤:

git clone https://github.com/ethereum/browser-solidity
cd browser-solidity
npm install
npm run prepublish

启动命令:

npm start
这里写图片描述

然后访问: http://127.0.0.1:8080,即可看到如下的界面:
这里写图片描述

设置本地目录

我们希望将solidity合约保存到本地或者从本地读取,则需要设置本地目录,这里我们使用remixd命令来实现:
官方地址: https://github.com/ethereum/remixd
安装步骤:

npm install -g remixd

如何使用,请参照使用说明:

remixd -h

 Usage: remixd -S <shared folder>

  Provide a two ways connection between the local computer and Remix IDE

  Options:

    -h, --help                  output usage information
    -S, --shared-folder <path>  Folder to share with Remix IDE

这里我将设置如下:

remixd -S “/home/bladestone/codebase/blocks/contracts”

运行效果图示:
这里写图片描述

在remix中配置本地目录

首先,启动remix,切入到browser-solidity目录,运行:

npm start

设置remixd命令配置好本地目录。参考如下操作:
这里写图片描述

然后打开的连接窗口,点击connect:
这里写图片描述

即可看到本地目录下的合约程序:
这里写图片描述

配置mist

mist是起官方提供的集成化的工具,用于挖矿以及相应的转账操作,其中也集成了remix-ide开发工具。
官方地址: https://github.com/ethereum/mist

我们将其下载到本地之后,解压缩之后,进入目录,可以看到其可执行的mist程序。
在正式使用mist之前,我们先启动本地区块链应用:

sudo geth –rpc –rpcport “8078” –rpccorsdomain ‘*’ –datadir=”/home/bladestone/codebase/blocks/chain” –port 30309 –nodiscover –rpcapi ‘db,eth,net,web3,debug’ –networkid 1006 console

这里需要说明几点:
– port 不用使用30303,这个是区块链中mist连接test-net的端口。如果使用了,则无法在本地启动mist
默认情况下需要启用ipc之间的通讯共享,不要禁止这个设置。
启动情况如下,其中标注出来的就是ipc位置:
这里写图片描述

接下来,启动mist,访问本地区块链应用:

sudo ./mist –rpc /home/bladestone/codebase/blocks/chain/geth.ipc

启动效果如下:
这里写图片描述

注意一下,上述的ipc是否被连接成功,在日志之中都有明确的提示信息。

在mist中配置remix-ide

启动完成后,检查private-net标示是否出现:
这里写图片描述

点击Mist中的Develop–> Open Remix IDE, 即可打开Remix开发环境,然后选择injected web3,即可连接本地的区块链环境:
这里写图片描述

然后的然后,就可以在remix自由的编写自己的合约了。

总结

实现remix的开发环境,默认推荐大家在Linux/Mac上,比较很多的内容还是比较给力的,当然windows也是完全胜任的,笔者使用的是Ubuntu 17.04的发行版本。上述的步骤只是记录了搭建过程中的各类配置,并未涉及到部署以及具体的开发细节,后续将会逐步细细将来,敬请期待。

参考文档

1 www.cnblogs.com/zl03jsj/p/7074435.html
2. http://ethfans.org/topics/78
3. http://www.8btc.com/blockchainclassroom7

——————————娇羞的分割线,终于出现了———————————

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

基于以太坊构建私有区块链网络教程指南

0. 私有区块链网络在一般的应用场景下,除了大家取挖矿参与之外,还有一种应用场景就是自己创建私有的区块链网路,满足自己特有的业务需求和场景。1. 下载Geth客户端官方站点: https://get...

Hibernate优化策略

引言:  Hibernate是目前Java领域事实上的ORM实现标准,它以优雅的方式解决了面向对象和面向Table之间的不匹配状态,是解决Java应用中数据持久化的框架。由于Hibernate自行管理...

hibernate的一些优化策略

Robbin总结的Hibernate性能优化要点(一): 1.尽量使用many-to-one,避免使用单项one-to-many 2.灵活使用单向one-to-many 3.不用一对一,使用多对...
  • iq105
  • iq105
  • 2014-05-04 20:43
  • 1231

Subversion代码提交中的org.apache.subversion.javahl.ClientException: svn: E200007: Commit failed异常解决

引言: 在切换subversion服务器地址之后,发生的无法正确提交代码的问题org.apache.subversion.javahl.ClientException: svn: E200007: C...

基于Vue的后台选择推荐

引言: Vue.js目前是业界大名鼎鼎的Web解决方案,具体有点,我这里就不再赘述了,感兴趣的童鞋自行查找阅读,这里罗列一下,这几天自己研究的成果,管理后台。管理后台 Vue Element Admi...

javaHL JNI not available

系统重装后安装了TortoiseSVN-1.8.1.24570-x64-svn-1.8.1,使用Eclipse同步代码提示“javaHL JNI not available”,打开window->pr...

Oracle常用脚本备忘

1、创建一个表T2,使之具有T1表的结构        CREATE TABLE T2 AS SELECT * FROM T1 WHERE 12、创建一个表T2,使之具有T1表的结构和数据  ...

SVN提交报错

新拉的一个svn分支,更改文件后,提交直接报错。svn: E200007: Commit failed (details follow): svn: E200007: Commit faile...

Subversion代码提交中的org.apache.subversion.javahl.ClientException: svn: E200007: Commit failed异常解决

今天在使用SVN手动提交代码的时候,出现了以下错误的提示信息: svn: E200007: Commit failed (details follow): svn: E200007: C...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)