首页 > 解决方案 > Hyperledger Fabric - 创建 grpc 服务器时出现 CRIT019 错误

问题描述

我调整了其中一个结构样本,毕竟我的对等节点无法工作。(其他服务正在运行!)

(Ubuntu 16.x)。我建立了自己的网络并启动了所有服务。加密的生成似乎没问题 - 但对等节点不会启动。

这是码头工人日志:

2018-07-21 22:55:24.045 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 00b Created state database _users
2018-07-21 22:55:24.122 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 00c Created state database _replicator
2018-07-21 22:55:24.201 UTC [couchdb] CreateDatabaseIfNotExist -> INFO 00d Created state database _global_changes
2018-07-21 22:55:24.281 UTC [kvledger] NewProvider -> INFO 00e ledger provider Initialized
2018-07-21 22:55:24.281 UTC [ledgermgmt] initialize -> INFO 00f ledger mgmt initialized
2018-07-21 22:55:24.281 UTC [peer] func1 -> INFO 010 Auto-detected peer address: 172.18.0.7:7051
2018-07-21 22:55:24.281 UTC [peer] func1 -> INFO 011 Returning peer0.Organisation1P:7051
2018-07-21 22:55:24.281 UTC [peer] func1 -> INFO 012 Auto-detected peer address: 172.18.0.7:7051
2018-07-21 22:55:24.281 UTC [peer] func1 -> INFO 013 Returning peer0.Organisation1P:7051
2018-07-21 22:55:24.285 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 014 Entering computeChaincodeEndpoint with peerHostname: peer0.Organisation1P
2018-07-21 22:55:24.285 UTC [nodeCmd] computeChaincodeEndpoint -> INFO 015 Exit with ccEndpoint: peer0.Organisation1P:7052
2018-07-21 22:55:24.285 UTC [nodeCmd] createChaincodeServer -> WARN 016 peer.chaincodeListenAddress is not set, using peer0.Organisation1P:7052
2018-07-21 22:55:24.288 UTC [eventhub_producer] start -> INFO 017 Event processor started
2018-07-21 22:55:24.341 UTC [nodeCmd] createChaincodeServer -> ERRO 018 Error creating GRPC server: listen tcp: lookup peer0.Organisation1P on 127.0.0.11:53: no such host
2018-07-21 22:55:24.341 UTC [nodeCmd] serve -> CRIT 019 Failed to create chaincode server: listen tcp: lookup peer0.Organisation1P on 127.0.0.11:53: no such host
panic: Failed to create chaincode server: listen tcp: lookup peer0.Organisation1P on 127.0.0.11:53: no such host

goroutine 1 [running]:
github.com/hyperledger/fabric/vendor/github.com/op/go-logging.(*Logger).Panicf(0xc4201b40f0, 0x107f2fe, 0x25, 0xc420246e30, 0x1, 0x1)
    /opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/op/go-logging/logger.go:194 +0x126
github.com/hyperledger/fabric/peer/node.serve(0x19a09e8, 0x0, 0x0, 0x0, 0x0)
    /opt/gopath/src/github.com/hyperledger/fabric/peer/node/start.go:229 +0xa99
github.com/hyperledger/fabric/peer/node.glob..func1(0x1891cc0, 0x19a09e8, 0x0, 0x0, 0x0, 0x0)
    /opt/gopath/src/github.com/hyperledger/fabric/peer/node/start.go:111 +0x9c
github.com/hyperledger/fabric/vendor/github.com/spf13/cobra.(*Command).execute(0x1891cc0, 0x19a09e8, 0x0, 0x0, 0x1891cc0, 0x19a09e8)
    /opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/spf13/cobra/command.go:698 +0x46d
github.com/hyperledger/fabric/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0x1892320, 0x197c7b0, 0xf, 0x1)
    /opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/spf13/cobra/command.go:783 +0x2e4
github.com/hyperledger/fabric/vendor/github.com/spf13/cobra.(*Command).Execute(0x1892320, 0x1, 0xffffffffffffffff)
    /opt/gopath/src/github.com/hyperledger/fabric/vendor/github.com/spf13/cobra/command.go:736 +0x2b
main.main()
    /opt/gopath/src/github.com/hyperledger/fabric/peer/main.go:97 +0x5bf

这是我的 dockerfile 的一部分:

  pr001.frachtgut.org:
    container_name: pr001.frachtgut.org
    image: hyperledger/fabric-peer
    environment:
      - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
      - CORE_PEER_ID=peer0.Organisation1P:7051
#     - CORE_LOGGING_PEER=debug
#     - CORE_CHAINCODE_LOGGING_LEVEL=DEBUG
#     - CORE_PEER_LOCALMSPID=Org1MSP
      - CORE_PEER_LOCALMSPID=Organisation1P
      - CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/msp/peer/
      - CORE_PEER_ADDRESS=peer0.Organisation1P:7051

#      - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer0.Organisation1P:7051
#      - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.Organisation1P: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}_frachtGUT
      - CORE_LEDGER_STATE_STATEDATABASE=CouchDB
      #- CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS=db100.frachtgut.org:5984
      - 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
    volumes:
        - /var/run/:/host/var/run/
        - ./crypto-config/peerOrganizations/Organisation1P/peers/peer0.Organisation1P/msp:/etc/hyperledger/msp/peer
        - ./crypto-config/peerOrganizations/Organisation1P/users/msp:/etc/hyperledger/msp/users
        - ./config:/etc/hyperledger/configtx
#        - /var/hyperledger/peer0:/var/hyperledger/production
    depends_on:
      - couchdb
      - od100.frachtgut.org
      #- db100.frachtgut.org
    networks:
      - frachtGUT

标签: hyperledger-fabricpeer

解决方案


尝试CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:7052在同行的环境中添加该行。

我在设置时也看到了这个错误network_mode= host

如果您有多个端口,请确保您的同行不使用相同的端口。


推荐阅读