Hyperledger fabric Hyperledger结构:对等链码实例化错误
启动容器时出错:无法生成特定于平台的docker 生成:从生成:1返回的错误“无法加载包:包” ../../bin/github.com/hyperledger/fabric/chaincode/marbles:打开 /bin/github.com/hyperledger/fabric/chaincode/marbles:没有这样的文件或 目录Hyperledger fabric Hyperledger结构:对等链码实例化错误,hyperledger-fabric,hyperledger,Hyperledger Fabric,Hyperledger,启动容器时出错:无法生成特定于平台的docker 生成:从生成:1返回的错误“无法加载包:包” ../../bin/github.com/hyperledger/fabric/chaincode/marbles:打开 /bin/github.com/hyperledger/fabric/chaincode/marbles:没有这样的文件或 目录 我看到它正在寻找一个相对目录。相对于什么?链码安装很好。如果安装了链码,为什么找不到它进行实例化?1个对等。1个solo orderer。频道连接很好。
我看到它正在寻找一个相对目录。相对于什么?链码安装很好。如果安装了链码,为什么找不到它进行实例化?1个对等。1个solo orderer。频道连接很好。链码安装并不意味着你已经正确映射了链码路径
peer chaincode install -p {path} -n {} -v {}
链码实例化构建并实例化链码
peer chaincode instantiate -n {} -v {} -c {} -C {}
- 在docker compose文件中,仔细检查 cli
- 安装链码时使用实际路径
-GOPATH=/opt/GOPATH
然后,您可以在CLI中安装并实例化:
SIGNED_CHAINCODE_LOCATION=/opt/gopath/src/chaincode/<cc_dir>/<signed_cc>.out
peer chaincode install /${SIGNED_CHAINCODE_LOCATION}
SIGNED\u CHAINCODE\u LOCATION=/opt/gopath/src/CHAINCODE//.out
对等链码安装/${SIGNED\u chaincode\u LOCATION}
并按正常方式实例化。
如果不需要打包和签名,只需使用目录而不是.out文件
在我的例子中,我在对等机中添加了一个工作目录,该目录将链码设置为我的基本区块链目录的相对目录:
-./chaincode/:/opt/gopath/src/chaincode/
,并将go文件夹转储到其中。看起来它无法编译链码,因为它需要一个未安装在容器中的依赖包。I从链码所在的目录中卸载。即,-p./尝试重新安装会产生已存在的正确错误。链码.0文件存在于/var/hyperledger/production/chaincodes中。未使用docker。我知道它在安装时说“OK”,我相信它说“收到0块”或类似的内容。啊。因此链码路径必须是比如github.com/hyperledger/fabric/chaincode/ccname,它在某种程度上是相对于gopath的。完整路径是/usr/local/go/src/github.com/hyperledger/fabric/chaincode/ccname。$gopath是/usr/local/go/bin。$GOROOT是/usr/local/go。所以fabric需要$GOROOT/src/?中的链码看起来很奇怪,但效果不错。thx@MohamedYoussef抱歉劫持了adv中的问题我正在使用NodeJS SDK,我在安装时得到了一个ok,在实例化时得到了一个fail。你能看看这个问题吗:?