为了账号安全,请及时绑定邮箱和手机立即绑定

无法组装交易,错误提议响应不成功,错误代码 500,消息链代码注册失败:容器以 0 退出

无法组装交易,错误提议响应不成功,错误代码 500,消息链代码注册失败:容器以 0 退出

Go
红糖糍粑 2023-06-19 15:56:56
我正在尝试实例化链码,但出现错误,而且我找不到解决方案。ubuntu 18.04hyperledger fabric 1.4.1我已经按照文档操作,上周成功了。相同的代码在另一台计算机上运行良好。在实例化之前,一切都进行得很顺利,包括制作频道。我没有在我的项目中应用节点。代码:root@c442cc2748e7:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer chaincode instantiate -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -l golang -v 1.0 -c '{"Args":[]}' -P "AND ('Org1MSP.peer','Org2MSP.peer')"2019-05-23 06:31:31.382 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 001 Using default escc2019-05-23 06:31:31.382 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default vsccError: could not assemble transaction, err proposal response was not successful, error code 500, msg chaincode registration failed: container exited with 0
查看完整描述

5 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

我通过简单地更改链代码的名称解决了这个问题。

root@c442cc2748e7:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer 链码实例化 -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -l golang -v 1.0 -c '{"Args":[]}' -P "AND ('Org1MSP.peer','Org2MSP.peer')"

只需将 -n mycc 更改为 -n 给任何你想要的名字


查看完整回答
反对 回复 2023-06-19
?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

我在使用ubuntu 18.04 和hyperledger fabric 1.4.1java chaincode安装设置时遇到了同样的问题。但是我已经按照以下过程解决了它。first-network

build.gradle我的依赖是

编译组:'org.hyperledger.fabric-chaincode-java',名称:'fabric-chaincode-shim',版本:'1.x'

我改成了

编译组:'org.hyperledger.fabric-chaincode-java',名称:'fabric-chaincode-shim',版本:'1.4.1'


查看完整回答
反对 回复 2023-06-19
?
九州编程

TA贡献1785条经验 获得超4个赞

我遇到了同样的问题。该问题基本上表明对等进程无法从链代码映像注册/创建容器。您可以通过一个简单的docker ps -a. 此外,在实例化时,对等方下载fabric-ccenv包含用于构建链代码所需库的图像。在我的例子中,fabric-ccenv正在下载一个旧图像。正是这种差异导致链代码容器以0状态代码退出。我fabric-ccenv使用用于 peer 的相同标签更新了 docker 镜像并解决了错误。此外,这可能发生在错误设置的情况下CORE_PEER_CHAINCODELISTENADDRESS。它应该设置为0.0.0.0:7052


查看完整回答
反对 回复 2023-06-19
?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

解决方案

移除dev-*容器并重试。

docker images
...
dev-peer0.org1.example.com-fabcar-1.0-93f09...
...

docker rmi $(docker images dev-* -q)

解释

lscc为链代码创建一个 docker 镜像。一旦这个图像存在,它将在未来重用它。如果图像不好,您必须删除它,然后再尝试实例化。我相信这就是为什么这么多“重命名”解决方案起作用的原因,它会导致创建一个新图像(使用不同的名称),因为 docker 图像名称的名称和版本。

故障排除

为了确定链代码启动失败的原因,您可以连接到 cli 容器并尝试手动运行链代码。例如,nodejs 链代码可能如下所示:

docker exec -it cli /bin/bash
#$ cd chaincode
#$ npm start
# <some npm error here>

另一种选择是打开对等点的日志记录并重试。可以通过环境变量打开对等日志记录FABRIC_LOGGING_SPEC。我会设置为debugorinfo然后再试一次。日志可以通过检查

docker logs peer0.org1.example.com

归根结底,该错误意味着lscc链代码无法启动您的链代码。


查看完整回答
反对 回复 2023-06-19
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

哦,我已经修好了!它是由 docker compose .yaml 文件引起的。我更改了目录的名称,但没有更新此文件中的“网络”。与目录名保持一致后,现在没有错误了。



查看完整回答
反对 回复 2023-06-19
  • 5 回答
  • 0 关注
  • 141 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信