【问题标题】:Hyperledge Composer publish definitions failedHyperledger Composer 发布定义失败
【发布时间】:2023-03-10 12:05:01
【问题描述】:

这不是重复的,至少我有正确版本的 Composer,我还阅读了 3 个 stackflow composer questions。

我尝试发布定义,Basic-Sample-Network 包来自 git 存储库,Basic-sample-network.bna 存档文件,命令如下:

composer network deploy -p hlfv1.json -a basic-sample-network.bna -i admin -s adminpw

错误(似乎是一般错误消息):

Identifier: basic-sample-network@0.1.3
Description: The Hello World of Hyperledger Composer samples

events.js:160 投掷者; // 未处理的“错误”事件 ^

错误:事件消息必须由与对等方来自同一组织的身份正确签名:[失败的反序列化事件创建者:[预期的 MSP ID Org1MSP,已收到]]

at ClientDuplexStream._emitStatusIfDone (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:189:19)
at ClientDuplexStream._receiveStatus (/usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:169:8)

在 /usr/local/lib/node_modules/composer-cli/node_modules/grpc/src/node/src/client.js:634:14

这是我的环境:

作曲家-v:

composer-cli v0.10.0

composer-admin v0.10.0

作曲家客户端 v0.10.0

composer-common v0.10.0

composer-runtime-hlf v0.10.0

composer-runtime-hlfv1 v0.10.0

npm c 3.10.10

hlfv1.json 配置文件:

{ “类型”:“hlfv1”, “订购者”:[ {“网址”:“grpc://本地主机:7050”} ], "ca": { "url": "http://localhost:7054", “名称”:“ca.org1.example.com” }, “同行”:[ { "requestURL": "grpc://localhost:7051", "eventURL": "grpc://localhost:7053" } ], "keyValStore": "${HOME}/.composer-credentials", “频道”:“作曲家频道”, "mspID": "Org1MSP", “超时”:“300” }

注意,我使用了 fabric-tool 脚本来启动结构并生成配置文件 (hlfv1.json)。

码头工人ps:

570ae25a586e hyperledger/fabric-peer:x86_64-1.0.0 "peer node start -..." 30 分钟前 Up 30 分钟 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/ tcp peer0.org1.example.com

513431e5d217 hyperledger/fabric-ca:x86_64-1.0.0 "sh -c 'fabric-ca-..." 31 分钟前 31 分钟前 0.0.0.0:7054->7054/tcp ca.org1.example。 com

2e7bf444481d hyperledger/fabric-couchdb:x86_64-1.0.0 "tini -- /docker-e..." 31 分钟前 上升 31 分钟 4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/ tcp 沙发数据库

5d5ba67cc602 hyperledger/fabric-orderer:x86_64-1.0.0 "orderer" 31 分钟前 30 分钟前 0.0.0.0:7050->7050/tcp orderer.example.com

【问题讨论】:

    标签: hyperledger-composer


    【解决方案1】:

    如果您按照开发者教程进行操作,您会看到必须使用 id PeerAdmin 来部署网络。

    https://hyperledger.github.io/composer/tutorials/developer-guide.html

    【讨论】:

    • 如果您查看文档,它也使用 admin 进行部署,无论如何我确实尝试了 admin 和 PeerAdmin,它们都返回了相同的错误。
    • 顺便说一句,我没有使用 Playgroud(我希望这是可选的)。我的测试很简单,我启动了所有的 docker 容器然后我现在想做的就是使用 CLI 发布一个定义,这就是现在的全部。顺便说一句,PeerAdmin 是 Fabric 成员吗?我查看了fabric-server.db,在Fabric db中没有看到这样的用户。
    • 为了让 PeerAdmin 工作,您需要使用 Composer fabric-dev 服务器(即遵循开发者指南)。
    • 不知道您所说的 fabric-dev server 是什么意思(我确实遵循了开发人员指南)。
    • ... 继续... 让我尝试一些非常简单的事情,这就是我所做的:1)fabric-tool/startFabric.sh 2)composer-rest-server -p profile -n my- network -i admin -s adminpw -N never .....令人惊讶的是,这也产生了同样的错误信息! ('profile' 是由 farbric-tool/createComposerProfile.sh 生成的...)...有什么想法吗?
    【解决方案2】:

    问题已解决。

    混淆是提供connectionProfileName,-p选项,基于阅读文档,我认为我必须提供一个带有连接信息的文件(即使提供的配置文件信息包含所有必要的信息),我不知道它实际上是根据 -p 选项中提供的名称从 ~/.composer-connection-profiles 文件夹中获取配置文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-17
      • 2019-03-16
      • 1970-01-01
      • 1970-01-01
      • 2017-09-09
      • 1970-01-01
      • 2017-12-24
      • 1970-01-01
      相关资源
      最近更新 更多