首页 > 解决方案 > 为什么我在尝试启动自定义网络时遇到此问题?

问题描述

当我在 Hyperledger Composer v0.19 上工作时,我创建了“tutorial-network”,按照教程中的方式安装并启动它。没有问题。但我试图创建我的自定义网络。当我试图启动我的自定义网络时,我遇到了这个问题;

    Error: Error trying to start business network. Error: No valid responses from any peers.
Response from attempted peer comms was an error: Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned from build: 1 "npm ERR! code EAI_AGAIN
npm ERR! errno EAI_AGAIN
npm ERR! request to https://registry.npmjs.org/composer-common failed, reason: getaddrinfo EAI_AGAIN registry.npmjs.org:443

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2019-01-10T11_49_13_667Z-debug.log
"
Command failed

我怎样才能解决这个问题?

标签: hyperledger-fabrichyperledger-composer

解决方案


问题是该composer network start命令在幕后使用 Fabric 为您的业务网络构建“Docker 链码容器”。在该构建期间,有一些npm install命令正在运行,它们是生成您看到的错误的命令。所以新容器无法连接到registry.npmjs.org

尝试时可能存在网络问题,如果您再试一次,它可能会起作用。有点奇怪,您能够通过教程网络正常工作,但是您的自定义网络不起作用 - 您是否使用同一台机器作为自定义网络,并连接到同一网络?(您是否从“开放”家庭网络运行本教程,现在正在使用代理在企业/组织网络上尝试自定义?)

npmrc 文件是 npm 的一组配置,其中可以包含代理详细信息,在 oc Composer 的情况下,您可以将文件传递到新的 Chaincode 容器中,以便它可以连接 npm 注册表或您使用的一些影子存储库。

还有很多关于 npm 和 npmrc 的其他 Stack Overflow 帖子(以及网络上的其他资源。)

即使是composer network start显示错误的命令,也必须在composer network install命令中指定 npmrc 文件。


推荐阅读