我通过利用a sample dev network的预生成订货人和渠道工件来运行“开发模式”
这里cli需要image:hyperledger / fabric-tools默认情况下它会尝试拉出最新的标签图像并显示errorlatest image。它抛出错误Error response from daemon: manifest for hyperledger/fabric-tools:latest not found
所以我拉图像hyperledger / fabric-tools:x86_64-1.0.0,并用hyperledger / fabric-tools重命名:最新(不确定它是否正确):
docker pull hyperledger/fabric-tools:x86_64-1.0.0
docker tag hyperledger/fabric-tools:x86_64-1.0.0 hyperledger/fabric-tools
我的网络运行成功但不幸的是cli容器已停止运行。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d10d170cd2fa hyperledger/fabric-tools:x86_64-1.0.0 "/bin/bash -c ./sc..." 29 seconds ago Exited (1) 27 seconds ago cli
163f494bb85f hyperledger/fabric-ccenv "/bin/bash -c 'sle..." 59 minutes ago Up About a minute chaincode
e96e86930d94 hyperledger/fabric-peer "peer node start -..." 59 minutes ago Up About a minute 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp peer
c568480e30d2 hyperledger/fabric-orderer "orderer" 59 minutes ago Up About a minute 0.0.0.0:7050->7050/tcp
您可以使用工具容器作为cli容器。
docker exec -it d10d170cd2fa /bin/bash
你可以通过发出命令docker logs <containerId>
发布cli容器的日志吗? cli容器出口并不一定意味着有关e2e测试的任何错误。
如果您使用docker-compose启动服务,则可以运行以下任一项:docker-compose restart -f docker-compose-simple.yaml cli
或docker-compose up -f docker-compose-simple.yaml cli
。
但是,如果您在上面标记了fabric-tools图像后启动了网络,则应使用docker logs cli
检查已退出容器的日志,以确定退出的原因。
这可能是因为以前运行的docker容器。在我的情况下,它第一次正常工作,但它第二次出错。使用杀死和删除创建的docker容器
docker rm container_name
并再次启动容器,解决了问题。