docker - 如何运行hyperedger/composer-cli docker镜像以执行composer命令?

标签 docker hyperledger-composer

取而代之的是使用composer-cli的npm软件包,我想通过docker image执行composer命令。但是当前运行容器后,它立即退出。需要帮助以正确的配置运行此容器。

最佳答案

此命令应为您构建容器:docker run -it --network composer_default -v ~/.composer:/home/composer/.composer --entrypoint "/bin/sh" hyperledger/composer-cli:latest
这将启动容器并使用交互式终端(-it),并且由于备用入口点而无法启动。

还要注意,您需要与其他Fabric容器在同一Docker Bridge上启动,并且开发Fabric使用--network composer_default
您可能需要保留使用的业务网卡,以便在必须创建新的cli容器时可以使用它们,因此请启动共享卷-v ~/.composer:/home/composer/.composer
您还需要注意,默认的开发环境假定可以将Fabric连接在本地主机上-但是,当您位于容器中时,它将不起作用-因此,您将需要替换连接中的URL。 PeerAdmin卡的json指向Docker Bridge已知的地址。这样的sed命令应该为您更改地址。
sed -e 's/localhost:7051/peer0.org1.example.com:7051/' -e 's/localhost:7053/peer0.org1.example.com:7053/' -e 's/localhost:7054/ca.org1.example.com:7054/' -e 's/localhost:7050/orderer.example.com:7050/' < $HOME/.composer/cards/PeerAdmin@hlfv1/connection.json > /tmp/connection.json && cp -p /tmp/connection.json $HOME/.composer/cards/PeerAdmin@hlfv1/
最后,如果您使用的是Development Fabric,则需要创建PeerAdmin卡。

关于docker - 如何运行hyperedger/composer-cli docker镜像以执行composer命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50926131/

相关文章:

docker - Dockerhub自动构建标签

docker - 在 docker RTS 沙箱中使用 log4j 登录 Apache Apex

blockchain - 从本地数据库对应用程序用户进行身份验证的 Passport 策略

docker - Hyperledger Composer 添加一个新的节点

node.js - Hyperledger-Composer:为什么使用 Node.js 而不是 Angular?

ruby-on-rails - 如何将程序包添加到现有图像?

docker - VSCode Remote Container -- 如何打开 VSCode 容器实例中的默认文件夹?

blockchain - super 账本 Composer : No business network has been specified for this connection

docker - Hyperledger Composer 休息服务器 : Error trying to ping. 错误 : No peers available to query. 最后一个错误是错误:14 不可用:连接失败

macos - 如何连接到在 Docker 容器中运行的服务器?