'入门' mac上的fabric-composer - 错误启动Fabric或错误部署到fabric

时间:2017-03-03 15:51:12

标签: hyperledger-composer

我按照https://fabric-composer.github.io/start/quickstart.html上的说明操作。以下是先决条件的版本。

macOS 10.12.3
$> docker --version
Docker version 1.12.5, build 7392c3b
$> docker-machine --version
docker-machine version 0.8.2, build e18a919
$> docker-compose --version
docker-compose version 1.9.0, build 2585387
$> node --version
v6.4.0
$> npm --version
4.0.3
$> git --version
git version 2.10.1 (Apple Git-78)

当我运行npm install时,脚本永远不会超越这一点:

# Wait for the Hyperledger Fabric to start.
while ! nc localhost 7051 </dev/null; do sleep 1; done

如果我进入脚本文件夹并运行docker-compose up --build(没有-d选项),它会做一堆看似有效的启动内容,然后这个输出重复过来&amp;结束了。

vp0_1         | 15:42:09.904 [peer] ensureConnected -> DEBU 08f Touch service indicates no dropped connections
vp0_1         | 15:42:09.904 [peer] ensureConnected -> DEBU 090 Connected to: []
vp0_1         | 15:42:09.904 [peer] ensureConnected -> DEBU 091 Discovery knows about: []
vp0_1         | 15:42:15.903 [peer] ensureConnected -> DEBU 092 Touch service indicates no dropped connections
vp0_1         | 15:42:15.903 [peer] ensureConnected -> DEBU 093 Connected to: []
vp0_1         | 15:42:15.903 [peer] ensureConnected -> DEBU 094 Discovery knows about: []

当我运行deployNetwork脚本时,我收到此错误

getting-started> composer network deploy --archiveFile digitalPropertyNetwork.bna  --enrollId WebAppAdmin --enrollSecret DJY27pEnl16d
Deploying business network from archive digitalPropertyNetwork.bna
Business network definition:
    Identifier: digitalproperty-network@0.0.1
    Description: Digital Property Network
events.js:160
      throw er; // Unhandled 'error' event
      ^

Error
    at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
    at ClientDuplexStream._readsDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:158:8)
    at readCallback (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:217:12)

我猜我的问题是:

  1. 如何验证结构是否正常运行?
  2. 如果运行正常,为什么deploy命令会出错?
  3. 更新... docker ps命令的输出是

    $> docker ps
    CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS              PORTS                                                      NAMES
    167c9b93d386        hyperledger/fabric-peer         "sh -c 'sleep 5; peer"   About an hour ago   Up About an hour    0.0.0.0:7050-7053->7050-7053/tcp                           scripts_vp0_1
    8aedcfa73607        hyperledger/fabric-membersrvc   "membersrvc"             About an hour ago   Up About an hour    0.0.0.0:7054->7054/tcp                                     scripts_membersrvc_1
    

3 个答案:

答案 0 :(得分:1)

因为我遇到了这个想法我会清除它。使用compose网络部署创建的默认连接配置文件(不提供特定的连接配置文件)尝试连接到localhost,因为docker工具箱使用VM,您应该将连接配置文件修改为该IP。

这也是它在docker for mac中为你工作的原因。

答案 1 :(得分:0)

从我可以看到,看起来您的Fabric对象和成员服务节点已经正确创建并且仍在运行,但业务网络阶段的部署失败。

您可以使用docker logs -f 167c9b93d386查看对等方是否有任何有关部署失败原因的指示。

如果那里没有任何迹象,那么我很想再次尝试使用: scripts/teardown.sh rm -rf $HOME/.composer-credentials npm install

答案 2 :(得分:0)

我使用的是Docker Toolbox。我切换到Docker For Mac,然后开始工作。

请参阅https://docs.docker.com/docker-for-mac/docker-toolbox/