Fabric Go 链码安装错误:错误:获取链码字节时出错:'go list'

我试图在对等 docker 容器中安装 golang 链代码,但出现以下错误。安装与 nodeJs 链码配合得很好。


volumes:

  - ./msps/peer4.org1/msp:/etc/hyperledger/fabric/msp

  - ../go-chaincode/dataCC:/opt/gopath/src/github.com/org1/dataCC

  - ./peer4:/opt/gopath/src/github.com/hyperledger/fabric/peer/files

  -  peer4.org1.com:/var/hyperledger/production

该go-chaincode/dataCC目录包含链码的 go 模块。


命令


peer lifecycle chaincode package $DATA_CHAINCODETAR_FILE --path $CORE_PEER_CHAINCODE_ID_PATH  --lang golang --label datacc_1

日志


2020-08-08 02:54:16.263 UTC [bccsp] GetDefault -> DEBU 002 Before using BCCSP, please call InitFactories(). Falling back to bootBCCSP.

2020-08-08 02:54:16.270 UTC [main] InitCmd -> DEBU 003 peer lifecycle chaincode package does not need to init crypto

错误:


error getting chaincode bytes: 'go list' failed: exec: "go": executable file not found in $PATH

码头集装箱


/opt/gopath/src/github.com/hyperledger/fabric/peer # go list

sh: go: not found


蓝山帝景
浏览 587回答 2
2回答

ABOUTYOU

我尝试复制该问题,并能够成功安装和实例化链代码。现在,这可能不是解决这个问题的最佳方法,但它确实对我有用。docker exec -it container_name bash使用命令(bash/sh根据容器的操作系统)进入 peer/cli 容器。从此处安装 go 二进制文件并按照所有安装说明进行操作。确保go按照附加链接中的示例安装检查。mkdir -p /root/go/src在此目录中运行并复制您的链代码文件夹。安装/打包/实例化你的链码。在安装/打包链代码之前,请确保将环境变量设置CORE_PEER_MSPCONFIGPATH为管理员的msp目录。默认路径是CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/users/Admin@org1.example.com/msp.试试这个方法,看看它是否适合你。每当我发现有用的东西或更好的解决方案时,我都会更新这个答案。

喵喔喔

执行以下命令,然后重试部署链代码:$go env GOPROXY=  $go env GO111MODULE=on如果上面的命令不能正常运行,那么执行下面的命令。$ export GO111MODULE=on $ export GOPROXY=https://goproxy.cn供参考: https ://goproxy.cn/
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go