浙江省建设安全协会网站,制作网站公司价格,dedecms采集规则各类网站,云南网站设计公司前言
部署环境: CentOS7.9 提前安装好以下工具
git客户端golangdockerdocker-composecurl工具
以下是个人使用的版本
git: 2.39.2golang: 1.18.6docker: 23.0.3dockkekr-compose: v2.17.2curl: 7.29.0
官方文档参考链接#xff1a;跳转链接#xff0c;不同的版本对应的官…前言
部署环境: CentOS7.9 提前安装好以下工具
git客户端golangdockerdocker-composecurl工具
以下是个人使用的版本
git: 2.39.2golang: 1.18.6docker: 23.0.3dockkekr-compose: v2.17.2curl: 7.29.0
官方文档参考链接跳转链接不同的版本对应的官方文档不太一样参考的时候注意看对应版本的文档,docker版本不能过低官方要求17.06.2-ce 或更高版本
环境搭建
下载fabric源码
git clone https://github.com/hyperledger/fabric.git进入到源代码的根目录,查看当前所处的分支
cd fabric/
git branch刚下载的源码默认是在main分支 切换到对应2.2版本的分支
git checkout -b release-2.2 origin/release-2.2
git branch进入到fabric源码的scripts文件夹中
cd scripts/
ls -l可以看到有个bootstrap.sh文件
执行脚本进行安装
sh bootstrap.sh 如果没有可执行权限使用以下命令修改权限
chmod x bootstrap.sh 执行脚本主要做了以下几件事情
下载fabric-samples的源码并切换到对应的版本下载hyperledger-fabric-linux-amd64-2.2.10.tar.gz解压后会生成bin和config目录下载hyperledger-fabric-ca-linux-amd64-1.5.5.tar.gz解压后生成bin目录下载hyperledger fabric相关docker镜像,并修改镜像tag为latest
脚本执行完成后主要生成以下内容
fabric-samples源码 切换到 fabric-samples会有两个目录:bin和config docker镜像
修改bin和config目录的可执行权限进入到fabric-samples源码根目录执行以下命令
chmod -R x bin/
chmod -R x config/进入到fabric-samples的test-network目录
cd test-network/使用以下命令启动
sh network.sh up使用docker命令可以看到启动了以下几个容器 创建channel
./network.sh createChannel -c mychannel出现以下内容代表创建channel成功channel创建成功后加入到节点里面
部署合约
./network.sh deployCC -ccn contract-name -ccv 1 -ccs 1 -ccp fabric-samples/asset-transfer-basic/chaincode-go -ccl go以上命令几个参数的含义 deployCC:这个脚本是源码里面自带的在fabric-samples/test-network/scripts/下面 -ccn合约名称 -ccv合约版本 -ccl 合约的语言java,go等 -ccs合约的序列必须是整数 -ccp合约所在的路径 其他参数可以在fabric-samples/test-network/scripts/utils.sh脚本里面这个脚本对每个参数都有详细的说明。 对于部署的合约可以自己定义或者使用官方提供的示例,官方提供的示例在fabric-samples/asset-transfer-basic 以上命令执行成功后最终会输出以下结果
如果要关闭网络执行以下命令
./network.sh down以上命令会将启动的docker镜像全部关闭并移除
问题解决
部署合约过程出现:dial tcp 142.251.42.241:443: connect: connection refused 解决方案:更换代理地址执行以下命令go env -w GOPROXYhttps://goproxy.cn结束
以上便是Hyperledger Fabric 2.2版本环境的搭建如有问题欢迎随时交流。