HyperLedger Fabric First网络设置问题

时间:2019-03-05 13:08:53

标签: hyperledger-fabric hyperledger

我是HyperLedger Fiber Technology的新手,我正在遵循this official tutorial来建立我的第一个网络。我用公司的域名替换了 example.com 。生成证书后,我运行以下命令来建立我的网络:

  

./ byfn.sh up -c ttchannel

在创建频道时出现以下错误:

Error: got unexpected status: FORBIDDEN -- Failed to reach implicit threshold of 1 sub-policies, required 1 remaining: permission denied
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!

然后我从PEERs容器中验证了对等方已经通过此通道进行连接(不知道建立此连接的原因和时间),因此,我重新启动了该网络,然后收到以下错误消息:

Error: failed to create deliver client: failed to load config for OrdererClient: unable to load orderer.tls.rootcert.file: open /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/vodworks.com/orderers/orderer.vodworks.com/msp/tlscacerts/tlsca.vodworks.com-cert.pem: no such file or directory
!!!!!!!!!!!!!!! Channel creation failed !!!!!!!!!!!!!!!!

然后,我在 CLI容器中验证了 crypto 目录不可访问,因此我必须重新启动该容器以使其可访问。但仍然无法运行它。

任何人都可以提出这些错误的含义以及如何运行我的网络吗?

2 个答案:

答案 0 :(得分:0)

您究竟在哪里更改了“ example.com”?我很确定安装脚本还会基于configtx.yaml文件创建所有加密材料,该文件在任何地方都具有“ example.com”作为域。然后,docker-compose文件会将创建的文件夹作为卷映射到容器中(请参阅docker-compose-base.yml):

../crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/msp:/var/hyperledger/orderer/msp

因此docker-compose文件还希望证书位于此文件夹中。根据您的描述,我希望您在某个时候错过了更改域名的机会。

答案 1 :(得分:0)

此错误的原因是网络无法正常关闭。正如我通过在每个对等方的容器内运行命令peer channel list验证的那样,所有对等方均已与该通道连接,从而产生以下输出:

  

渠道同行已加入:
  ttchannel

在这种情况下,命令peer channel create ...实际上引发了此错误。因此,我可以使用以下命令成功运行网络:

**./byfn.sh restart -c ttchannel -s couchdb -t 60 -d 10**

实际上是先关闭网络,然后再重新启动。