QQ群:693675108 (技术群,非区块链研究者勿扰)
说一下Fabric 与Fabric-samples 这两个项目其实是一样的,后面的项目只是纯测试的一个项目,Fabric是一个正式的项目
1、安装环境
1.1 go(1.9以上)1.2 docker、docker-compose(1.18版本,如果1.21的话需要改一下配置文件)1.3 linux+Virtualbox+ubuntu16.04(ubuntu目前必须该版本16.04,18的话会有冲突)
2、
2.1 安装go、docker、docker-compose都已经在我上一篇博客写的清清楚楚了https://my.oschina.net/mdxlcj/blog/18097812.2 接下来 下载Fabric$ cd $GOPATH/src/github.com/hyperledger$ git clone https://github.com/hyperledger/fabric-samples.git切换版本,目前下载最新版本的是v1.1.0是最高的,而我们用的版本号是v1.0.2,因为版本v1.1.0,他的byfn.sh 文件多增加了一个capabilties属性,与镜像中的版本会不匹配,导致下一步错误。$ git tag$ git checkout v1.0.2$ git branch(连续多试几次成功切换了)进入fabric-samples/first-network文件夹,执行命令$ ./byfn.sh -m generate 执行命令成功,如果不成功,会提示两种错误,往下看
会告诉你没有crytogen工具,cryptogen tool not found. exiting
解决方案是:You are missing: "", see here how to get them.
解决办法是:在执行first-network例子的上一层目录下面要有一个bin文件夹,里面放着需要的可执行文件。
但是如果第一次下载fabric-samples的话没有bin目录,所以也不存在该目录下是否存在bootstrap-1.0.0.sh,其实这个我们可以去fabric的目录下去复制,具体位置/opt/gopath/src/github.com/hyperledger/fabric/scripts,然后将脚本复制到fabric-samples跟目录下然后执行该脚本
$ ./bootstrap-1.0.0.sh
$ ./byfn.sh -m generate
如果失败的话,如图所示,就是我上面提到的,版本太高,要换到Fabric-samples v1.0.2的版本
$ ./byfn.sh -m up 启动
最后成功!