Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hyperledger fabric 在对等方上调用事务时发生连接错误_Hyperledger Fabric - Fatal编程技术网

Hyperledger fabric 在对等方上调用事务时发生连接错误

Hyperledger fabric 在对等方上调用事务时发生连接错误,hyperledger-fabric,Hyperledger Fabric,我正在尝试执行我用couchdb和java编写的链式代码。我使用第一个网络示例创建网络并实例化代码。网络已创建,链码已顺利安装。然后我进入容器并执行事务。起初它工作正常,但突然它开始给我这个错误,现在我找不到解决办法。我不知道它是否与couchdb连接有关 Error: error getting endorser client for invoke: endorser client failed to connect to peer0.org2.example.com:7051: failed

我正在尝试执行我用couchdb和java编写的链式代码。我使用第一个网络示例创建网络并实例化代码。网络已创建,链码已顺利安装。然后我进入容器并执行事务。起初它工作正常,但突然它开始给我这个错误,现在我找不到解决办法。我不知道它是否与couchdb连接有关

Error: error getting endorser client for invoke: endorser client failed to
connect to peer0.org2.example.com:7051: failed to create new connection:
connection error: desc = "transport: error while dialing: dial tcp
172.24.0.9:7051: connect: connection refused"
下一个是我用来开链码的密码

peer chaincode invoke -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C $CHANNEL_NAME -n mycc --peerAddresses peer0.org1.example.com:7051 --tlsRootCertFiles /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt --peerAddresses peer0.org2.example.com:7051 --tlsRootCertFiles /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt -c '{"Args":["createCustomer","c1","tom"]}'
更新:


很多人问过链码是否安装在对等机上,我可以确认。这意味着您的端口没有为对等机打开,请检查snippet ports部分,您的对等机docker文件应该是这样的

peer0.org1.example.com:
    container_name: peer0.org1.example.com
    image: hyperledger/fabric-peer
    environment:
      - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
      - CORE_PEER_ID=peer0.org1.example.com
      - FABRIC_LOGGING_SPEC=info
      - CORE_CHAINCODE_LOGGING_LEVEL=info
      - CORE_PEER_LOCALMSPID=Org1MSP
      - CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/peer/
      - CORE_PEER_ADDRESS=peer0.org1.example.com:7051
      # # the following setting starts chaincode containers on the same
      # # bridge network as the peers
      # # https://docs.docker.com/compose/networking/
      - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=${COMPOSE_PROJECT_NAME}_basic
      - CORE_LEDGER_STATE_STATEDATABASE=CouchDB
      - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=couchdb:5984
      # The CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME and CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD
      # provide the credentials for ledger to connect to CouchDB.  The username and password must
      # match the username and password set for the associated CouchDB.
      - CORE_LEDGER_STATE_COUCHDBCONFIG_USERNAME=
      - CORE_LEDGER_STATE_COUCHDBCONFIG_PASSWORD=
    working_dir: /opt/gopath/src/github.com/hyperledger/fabric
    command: peer node start
    # command: peer node start --peer-chaincodedev=true
    ports:
      - 7051:7051
      - 7053:7053

您是否在peer0.org2.example.com上安装了该链码?请尝试:telnet peer0.org2.example.com 7051如果无法到达该对等端口,则您需要处理网络或节点中的某些内容。这可能是由于以下错误导致的-1或者链码未在两个对等端口上安装,或者2您的对等端口无法访问。要检查对等机是否可访问,只需尝试访问firefox上的ip地址:对等机端口,如果您得到的响应意味着对等机可访问,其他事情您可以检查该对等机上是否安装了链码?@BrajeshKumar我尝试通过firefox访问,就像您对对等机说的,但它似乎不起作用,所以正如你所说的,似乎无法访问同龄人。你知道这里的问题或解决方案是什么吗?谢谢你帮我解决ir问题,我的端口出现了一个错误。