使用 Docker 工具箱的 Hyperledger Fabric v0.6
Hyperledger Fabric v0.6 using Docker Toolbox
我在 Windows 上使用 Docker 工具箱到 运行 Hyperledger Fabric v0.6。 Peer 和 CA 已成功启动。
当我 运行 以下命令时:
CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS=0.0.0.0:7051 ./chaincode_example02.
以错误结束:
"Error trying to connect to local peer : grpc : timed out when
dialing"
我将 0.0.0.0:7051
更改为 dockerfile_vp0_1 的内部 IP,172.17.0.3 :7051
但我最终遇到了同样的错误。
我正在按照 https://github.com/hyperledger/fabric/blob/v0.6.1-preview/docs/Setup/Chaincode-setup.md 的说明进行操作,而且我在公司防火墙后面。
你能帮忙吗
我理解CORE_PEER_ADDRESS是对端的IP地址,那么CORE_VM_ENDPOINT是什么?
CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS=0.0.0.0:7051 ./chaincode_example02
命令所在的位置 运行 似乎是关键因素。
我可以复制 运行ning docker 所经历的相同结果-组合,在 Windows 主机上获取 chaincode_example02 代码,构建链码在 Windows 上,然后打开一个新的 Docker 快速入门 window。我将目录更改为 $GOPATH/src/github.com/chaincode_example02 目录,然后 运行 上面的命令。结果与问题中注明的结果相符。
运行 来自 Docker 容器内的对等映像的命令应该产生不同的结果。
- 基于docker-compose.yml文件运行宁
docker-compose up
后,打开另一个Docker快速入门window.
- 使用类似于此命令的命令导航到对等点的文件系统:
docker exec -it <substitute container name>_vp0_1 bash
。要查找容器名称,可以先运行 docker ps
.
- 进入对等文件系统后,您可以通过查看 /opt/gopath/src/github.com/hyperledger/fabric/peer/core.yaml 文件来检查正在使用的端口。对等方的“listenAddress”标记为 0.0.0.0:7051。
- 可以使用
netstat -an
命令查看7051端口是否处于监听状态
- 如果对等端似乎没有在端口 7051 上侦听,请确保
peer node start --peer-chaincodedev
命令具有 运行。这应该是 docker-compose.yml 文件的结果,因为它是该文件中的最后一条语句。
- 导航到对等文件系统中的 /opt/gopath/src/github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 和 运行
go build
.
- 留在同一个 chaincode_example02 目录和 运行
CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS:0.0.0.0.7051 ./chaincode_example02
命令
我在 Windows 上使用 Docker 工具箱到 运行 Hyperledger Fabric v0.6。 Peer 和 CA 已成功启动。 当我 运行 以下命令时:
CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS=0.0.0.0:7051 ./chaincode_example02.
以错误结束:
"Error trying to connect to local peer : grpc : timed out when dialing"
我将 0.0.0.0:7051
更改为 dockerfile_vp0_1 的内部 IP,172.17.0.3 :7051
但我最终遇到了同样的错误。
我正在按照 https://github.com/hyperledger/fabric/blob/v0.6.1-preview/docs/Setup/Chaincode-setup.md 的说明进行操作,而且我在公司防火墙后面。
你能帮忙吗
我理解CORE_PEER_ADDRESS是对端的IP地址,那么CORE_VM_ENDPOINT是什么?
CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS=0.0.0.0:7051 ./chaincode_example02
命令所在的位置 运行 似乎是关键因素。
我可以复制 运行ning docker 所经历的相同结果-组合,在 Windows 主机上获取 chaincode_example02 代码,构建链码在 Windows 上,然后打开一个新的 Docker 快速入门 window。我将目录更改为 $GOPATH/src/github.com/chaincode_example02 目录,然后 运行 上面的命令。结果与问题中注明的结果相符。
运行 来自 Docker 容器内的对等映像的命令应该产生不同的结果。
- 基于docker-compose.yml文件运行宁
docker-compose up
后,打开另一个Docker快速入门window. - 使用类似于此命令的命令导航到对等点的文件系统:
docker exec -it <substitute container name>_vp0_1 bash
。要查找容器名称,可以先运行docker ps
. - 进入对等文件系统后,您可以通过查看 /opt/gopath/src/github.com/hyperledger/fabric/peer/core.yaml 文件来检查正在使用的端口。对等方的“listenAddress”标记为 0.0.0.0:7051。
- 可以使用
netstat -an
命令查看7051端口是否处于监听状态 - 如果对等端似乎没有在端口 7051 上侦听,请确保
peer node start --peer-chaincodedev
命令具有 运行。这应该是 docker-compose.yml 文件的结果,因为它是该文件中的最后一条语句。 - 导航到对等文件系统中的 /opt/gopath/src/github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 和 运行
go build
. - 留在同一个 chaincode_example02 目录和 运行
CORE_CHAINCODE_ID_NAME=mycc CORE_PEER_ADDRESS:0.0.0.0.7051 ./chaincode_example02
命令