如何运行hyperedger / composer-cli docker image来执行composer命令?

时间:2018-06-19 10:26:32

标签: docker hyperledger-composer

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

1 个答案:

答案 0 :(得分:3)

此命令应为您构建容器: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可以连接在地址 localhost - BUT 上,当您位于内部时,该连接将不起作用一个容器-因此您需要替换PeerAdmin卡的connection.json中的URL,以指向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卡。