最近在学习配置fabric2.2的环境,之前步骤都是和fabric1.4一样的,就是最后下载好fabric源码之后,需要切换到2.2版本:cd ~/go/src/github.com/hyperledger/fabric     进入fabric目录

git checkout v2.2.0   切换fabric的版本到2.2

然后进入test-network文件夹,相继执行:

启动 fabric 网络:sudo ./network.sh up

在网络上建立通道:sudo ./network.sh createChannel

在通道上启动链码:sudo ./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go
 

报错的是最后一步链码的过程:

首先,如果遇到:

显示的是权限问题,我们需要对go文件夹解锁,返回到主目录打开终端:

指令:sudo chmod -R 777 ~/go

之后再执行语句:sudo ./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go

报错:Error: chaincode install failed with status: 500 - failed to invoke backing...

解决方案,到链码所在的目录下提前下载依赖包:

cd fabric-samples/asset-transfer-basic/chaincode-go

打开终端:

更改go代理:

go env -w GOPROXY=https://goproxy.cn,direct

go env -w GO111MODULE=on

go mod vendor

go env -w GOPROXY=https://goproxy.cn,direct
go env -w GO111MODULE=on
go mod vendor

执行go mod vendor之后发现:

报错了,我们发现应该是gopath的文件夹权限问题,所以我们查看gopath的路径是:opt/gopath

所以我们需要将opt文件夹进行解锁:

opt是系统文件夹 权限被保护起来了 打开终端 输入如下命令 sudo chmod -R 777 /opt 然后回车 输入自己的密码 再回车 

再进行 go mod vendor:

显示设置代理成功!

我们再回到test-network文件夹中,执行:sudo ./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go

如下图:

已经成功了!

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐