Hyperledger Fabric--多主机网络--Docker Swarm。

问题描述 投票:0回答:1

我安装了Hyperledger Fabric,并试图通过docker swarm将我的链码分发到两个不同主机上的两个对等体上(正好是两台Ubuntu 16.04机器)。我找到了一个链接,解释了如何做到这一点,但我不能让它工作 (https:/medium.com@wahabjawedhyperledger-fabric-on-multi-hosts-a33b08ef24f。). 我专门把Build-Multi-Host-Network文件夹放在fabric-samples文件夹中,在终端运行命令.bmhn.sh,但它给我的错误如下。

FATA 001 Missing channelID, please specify it with '-channelID'
Failed to generate orderer genesis block ...

谁能告诉我如何解决?我还在错误行的.bmhn.sh代码中指定了-channelID,但没有任何结果。谢谢。

docker hyperledger-fabric docker-swarm peer chaincode
1个回答
0
投票

本教程运行在老版本的Hyperledger Fabric上。您可以使用Fabric v1.4.1.使用此命令下载二进制&docker图像。

curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/master/scripts/bootstrap.sh | bash -s -- 1.4.1 1.4.1

之后,当启动网络组件(peer,orderer,...)时,你必须指定docker镜像的版本。例如运行CA,你使用镜像hyperledgerfabric-ca:1.4.1。

docker run --rm -it --network="my-net" --name ca.example.com -p 7054:7054 -e FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server -e FABRIC_CA_SERVER_CA_NAME=ca.example.com -e FABRIC_CA_SERVER_CA_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem -e FABRIC_CA_SERVER_CA_KEYFILE=/etc/hyperledger/fabric-ca-server-config/{put the name of secret key} -v $(pwd)/crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config -e CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=hyp-net hyperledger/fabric-ca:1.4.1 sh -c 'fabric-ca-server start -b admin:adminpw -d'

你的网络返回错误是因为:在新版本中,你必须在生成genesis块配置时指定系统通道的名称。例子:1.4.1:你的网络返回错误,因为:在新版本中,你在生成genesis块配置时必须指定系统通道的名称。

configtxgen -profile TwoOrgsOrdererGenesis -channelID system-channel -outputBlock ./system-genesis-block/genesis.block
© www.soinside.com 2019 - 2024. All rights reserved.