Hyperledger-fabric:链码部署连接错误
Hyperledger-fabric : chaincode deploy connection error
我正在尝试使用 docker 测试结构链代码 example02。我是新手:)
这是我的 docker-compose.yml
:
membersrvc:
image: hyperledger/fabric-membersrvc
command: membersrvc
vp0:
image: hyperledger/fabric-peer
environment:
- CORE_PER_ID=vp0
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_VM_ENDPOINT=http://0.0.0.0:2375
- CORE_LOGGING_LEVEL=DEBUG
command: sh -c "sleep 5; peer node start --peer-chaincodedev"
vp1:
extends:
service: vp0
environment:
- CORE_PEER_ID=vp1
- CORE_PEER_DISCOVERY_ROOTNODE=vp0:7051
links:
- vp0
vp2:
extends:
service: vp0
environment:
- CORE_PEER_ID=vp2
- CORE_PEER_DISCOVERY_ROOTNODE=vp0:7051
links:
- vp0
我运行(我指的是Fabric chaincode setup page):
1 号航站楼:
$ docker-compose up
2 号航站楼:
$ cd /hyperledger/examples/chaincode/go/chaincode_example02
$ CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS=0.0.0.0:7051 ./chaincode_example02
3 号航站楼:
$ peer chaincode deploy -n mycc -c '{"Args": ["init", "a","100", "b", "200"]}'
它在 1,2 号航站楼运行良好。但是3号终端显示连接错误
2016/10/21 04:39:15 grpc: addrConn.resetTransport failed to create client
transport: connection error: desc = "transport: dial tcp 0.0.0.0:7051:
getsockopt: connection refused"; Reconnecting to {"0.0.0.0:7051" <nil>}
Error: Error building chaincode: Error trying to connect to local peer:
grpc: timed out when dialing
有什么问题?
您似乎缺少将所需端口从 docker 容器映射到主机(您正在尝试 peer 命令的主机)的组合语句。因此,对等进程可能正在侦听对等 docker 容器内的端口 7051,但此连接不适用于终端 3 中此容器外部使用的对等命令。
您可以使用 'ports' 标签映射端口。例如:
membersrvc:
image: hyperledger/fabric-membersrvc
ports:
- "7054:7054"
command: membersrvc
vp0:
image: hyperledger/fabric-peer
ports:
- "7050:7050"
- "7051:7051"
- "7053:7053"
environment:
- CORE_PER_ID=vp0
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_VM_ENDPOINT=http://0.0.0.0:2375
- CORE_LOGGING_LEVEL=DEBUG
command: sh -c "sleep 5; peer node start --peer-chaincodedev"
在终端 3 中执行 peer chaincode deploy ...
之前,您可以使用
检查对等进程是否正在侦听端口 7051
netstat -lnptu |grep 7051
我正在尝试使用 docker 测试结构链代码 example02。我是新手:)
这是我的 docker-compose.yml
:
membersrvc:
image: hyperledger/fabric-membersrvc
command: membersrvc
vp0:
image: hyperledger/fabric-peer
environment:
- CORE_PER_ID=vp0
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_VM_ENDPOINT=http://0.0.0.0:2375
- CORE_LOGGING_LEVEL=DEBUG
command: sh -c "sleep 5; peer node start --peer-chaincodedev"
vp1:
extends:
service: vp0
environment:
- CORE_PEER_ID=vp1
- CORE_PEER_DISCOVERY_ROOTNODE=vp0:7051
links:
- vp0
vp2:
extends:
service: vp0
environment:
- CORE_PEER_ID=vp2
- CORE_PEER_DISCOVERY_ROOTNODE=vp0:7051
links:
- vp0
我运行(我指的是Fabric chaincode setup page):
1 号航站楼:
$ docker-compose up
2 号航站楼:
$ cd /hyperledger/examples/chaincode/go/chaincode_example02
$ CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS=0.0.0.0:7051 ./chaincode_example02
3 号航站楼:
$ peer chaincode deploy -n mycc -c '{"Args": ["init", "a","100", "b", "200"]}'
它在 1,2 号航站楼运行良好。但是3号终端显示连接错误
2016/10/21 04:39:15 grpc: addrConn.resetTransport failed to create client
transport: connection error: desc = "transport: dial tcp 0.0.0.0:7051:
getsockopt: connection refused"; Reconnecting to {"0.0.0.0:7051" <nil>}
Error: Error building chaincode: Error trying to connect to local peer:
grpc: timed out when dialing
有什么问题?
您似乎缺少将所需端口从 docker 容器映射到主机(您正在尝试 peer 命令的主机)的组合语句。因此,对等进程可能正在侦听对等 docker 容器内的端口 7051,但此连接不适用于终端 3 中此容器外部使用的对等命令。
您可以使用 'ports' 标签映射端口。例如:
membersrvc:
image: hyperledger/fabric-membersrvc
ports:
- "7054:7054"
command: membersrvc
vp0:
image: hyperledger/fabric-peer
ports:
- "7050:7050"
- "7051:7051"
- "7053:7053"
environment:
- CORE_PER_ID=vp0
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_VM_ENDPOINT=http://0.0.0.0:2375
- CORE_LOGGING_LEVEL=DEBUG
command: sh -c "sleep 5; peer node start --peer-chaincodedev"
在终端 3 中执行 peer chaincode deploy ...
之前,您可以使用
netstat -lnptu |grep 7051