在这篇文章中,我们基于前面的准备工作,开始搭建Hyperledger Fabric环境,并运行测试样例。
部署Hyperledger Fabric有自动和手动两种方式。在这里采用手动的部署方式进行部署(原谅卑微的我不会采用自动部署的方式):
1.Fabric源码下载在GOPATH下创建源码存储的文件夹,并进入该目录
$ mkdir -p $GOPATH/src/github.com/Hyperledger
$ cd $GOPATH/src/github.com/Hyperledger
2.在该子目录下下载Fabric源码
两种下载方式:一种是从github上进行下载,一种是在国内的库里进行下载
Github下载代码:git clone https://github.com/hyperledger/fabric.git
从Github上下载代码有可能会因为连接不稳定或者限流导致文件下载不完全,所以本人在下载代码时采用下述代码:
$ git clone https://gitee.com/fireflies-glimmer/fabric.git
//将版本切换至v1.4.0
$ cd fabric
$ git checkout v1.4.0
3.下载测试样例
注意:测试样例源码与Fabric源码应该属于同级目录:即都位于Hyperledger目录下面。
$ git clone -bmaster https://github.com/hyperledger/fabric-samples.git
这里也可以对测试样例的版本进行指定,如上述对fabric版本进行指定
4.运行bootstrap.sh文件
在这个文件中需要下载一些二进制文件,而这些文件都位于国外的网站上,所以下载速度非常慢。且该文件主要完成的事有:1.下载fabric-samples到fabric目录下,2.下载相关的二进制文件,3.下载相关的docker镜像。
4.1.在上述过程中已经完成了frabic-samples的下载
4.2.下载相应的镜像文件
下载地址:将下述两个网址分别复制到浏览器地址栏便可以拉起下载引擎进行下载
https://github.com/hyperledger/fabric/releases/download/v1.4.0/hyperledger-fabric-linux-amd64-1.4.0.tar.gz
https://github.com/hyperledger/fabric-ca/releases/download/v1.4.0/hyperledger-fabric-ca-linux-amd64-1.4.0.tar.gz
将下载好的二进制文件上传并解压到fabric-samples目录下:
tar -zxvf hyperledger-fabric-linux-amd64-1.4.0.tar.gz
tar -zxvf hyperledger-fabric-ca-linux-amd64-1.4.0.tar.gz
将将 fabric/scripts 目录下的 bootstrap.sh 脚本,复制到fabric-sample目录下,并运行下述命令:
./bootstrap.sh -s -b
等待镜像下载完成后,进入first-network目录下并运行 ./byfn.sh up
cd first-network
./byfn.sh up
出现上面图片所展示的内容则证明网络测试成功。
切记:运行完毕后一定要关闭网络
./byfn.sh down
5.运行中的错误
5.1运行时 ./byfn.sh up时报错
error getting endorser client for channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: context deadline exceeded
则在base/peer-base.yaml 和docker-compose-cli.yaml文件的environment中添加
-GODEBUG=netdns=go
5.2运行时报如下的错误
Endorser and orderer connections initialized
Error: got unexpected status: BAD_REQUEST -- error authorizing update: error validating ReadSet: readset expected key [Group] /Channel/Application at version 0, but got version 1
解决方法:运行时命令改为
./byfn.sh -m restart -c mychannel
至此Hyperledger Fabric的第一个网络测试已经完成。后续将会对文章的内容进行进一步的补充,并对在部署过程遇的其他问题及其解决方法进行完善。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)