【发布时间】:2021-02-08 23:10:50
【问题描述】:
在构建您的第一个网络文档中更新锚节点时出现 Hyperledger Fabric 错误。这个错误如下。
错误:无法创建交付客户端:orderer 客户端无法连接到 orderer.example.com:7050:无法创建新连接:x509:证书由未知机构签名
我需要你的帮助。
【问题讨论】:
在构建您的第一个网络文档中更新锚节点时出现 Hyperledger Fabric 错误。这个错误如下。
错误:无法创建交付客户端:orderer 客户端无法连接到 orderer.example.com:7050:无法创建新连接:x509:证书由未知机构签名
我需要你的帮助。
【问题讨论】:
我通过关闭网络来修复 (byfn.sh down)
然后再次向上 (byfn.sh up)。
请参阅此链接了解更多信息: How to fix "FAILED to execute End-2-End Scenario" in Hyperledger Fabric?
【讨论】:
x509: 由未知机构签署的证书
这个错误是由于证书格式不匹配,当我使用 v1.0 cryptogen tool 生成证书并使用 v1.1 Fabric 容器 运行网络时,我遇到了这个错误强>。
所以,尝试从这里更新 cryptogen 工具 -> http://hyperledger-fabric.readthedocs.io/en/release-1.1/samples.html#binaries。
我不知道您使用的是什么版本,所以我以为它会是 v1.1。因此,请指定您使用的 Hyperledger Fabric 版本。
【讨论】:
其中一个问题可能是您拥有旧版本的 Hyperledger 示例,并且您指向的是旧版本的 Cryptogen 工具。因此,如果您下载较新的示例,当您生成 crypto-config 时,它将使用旧版本的 cryptogen 工具 生成它,这可能会使您的 orderer 容器停止,因为可以验证生成的证书.
这是因为不同版本的加密工具生成不同的元数据。
我的建议是检查您使用的加密版本是否是您下载的示例图像中包含的版本。如果你已经运行了很多测试,清理所有的 docker 镜像和容器,这总是有帮助的。
如果这些都不起作用,我写了一个基于基本网络示例的教程以及如何在多个主机上运行它,也许你可以从那里获取一些信息。
https://medium.com/1950labs/setup-hyperledger-fabric-in-multiple-physical-machines-d8f3710ed9b4
如有疑问,请随时提问!
【讨论】:
此错误是由于 v.1.4.0 的通道功能设置为 true,因此您应该将其更改为 false,以便它可以针对每个版本的结构运行。
【讨论】:
试试:
docker ps -a
查找hyperledger orderer 和peer images 的容器ID。然后试试:
docker rm *container_ID*
删除它们。之后就可以运行./network.sh up createChannel。
【讨论】:
所以对于这个错误,我尝试做byfn.sh down 和byfn.sh up,但之后它又抛出了另一个错误,我通过首先杀死所有容器、删除它们、清理所有已经存在的图像和卷并重新启动教程来解决这个错误.杀死和删除进程和图像并清理我的系统。
https://medium.com/coinmonks
docker kill $(docker ps -q)
docker rm $(docker ps -qa)
docker system prune -a
docker volumes prune -a
删除 fabric-samples 目录并从头开始,你就可以开始了。
【讨论】: