我将演示部署为http://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html
的文档当cli节点在script.sh
中执行instantiateChaincode函数时,抛出错误:
错误支持链码:rpc错误:代码= 2 desc =启动链码时超时过期mycc:1.0(networkid:dev,peerid:peer0.org1.example.com,tx:36950e4638442cdd37215838c2bd6062af63b6f0e729b43d76eda0f3e1eb6b8b)
我无法长时间删除此错误。
我是怎么做到的?
答案 0 :(得分:0)
对我来说,发生同样的错误。因为我在docker compose文件中设置了错误的网络。同行和订购者不在同一网络上,他们无法彼此通信。
使用docker-compose
启动网络时,请检查是否设置了此设置:CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_byfn
和docker文件中的相关网络。
例如,
如果您这样配置docker文件:
peer0.org1.example.com:
container_name: peer0.org1.example.com
extends:
file: base/docker-compose-base.yaml
service: peer0.org1.example.com
networks:
- byfn
您需要设置CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE
,该值的前缀是您的目录名称,该值的后缀是您的网络的值(即byfn),并使用“ _”连接前缀和后缀。
您可以按照this url在docker compose中设置网络。
确保对等方和订购者在同一网络上。
答案 1 :(得分:-1)
这是一个很难诊断的信息量。一些有用的提示可以解决...确保您拥有最新的结构图像和实用程序 - 无需从源代码构建,只需按照先决条件部分中的说明进行操作即可。检查Go,Docker等的版本控制...杀死任何过时的容器并修剪持久的docker网络。 docker rm -f $(docker ps -aq)
& docker network prune
。
现在重新启动您的docker引擎。具有讽刺意味的是,这实际上比人们想象的更频繁地解决连接错误现在继续关注“构建您的第一个网络”教程。 http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html