Hyperledger fabric 将Hyperledger Composer连接到结构

Hyperledger fabric 将Hyperledger Composer连接到结构,hyperledger-fabric,hyperledger-composer,Hyperledger Fabric,Hyperledger Composer,我正在尝试将Hyperledger Composer连接到正在运行的结构部署,但收到证书错误。下面是docker composer文件的摘录,用于启动CA extends: file: base.yaml service: ca-base container_name: ca.org1.example.com hostname: ca.org1.example.com environment: - FABRIC_CA_SERVER_CA_NAME=ca-org1 ports: -

我正在尝试将Hyperledger Composer连接到正在运行的结构部署,但收到证书错误。下面是docker composer文件的摘录,用于启动CA

extends:
  file: base.yaml
  service: ca-base
container_name: ca.org1.example.com
hostname: ca.org1.example.com
environment:
  - FABRIC_CA_SERVER_CA_NAME=ca-org1
ports:
  - "7054:7054"
volumes:
  - ./e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config
command: sh -c 'fabric-ca-server start --ca.certfile /etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem --ca.keyfile /etc/hyperledger/fabric-ca-server-config/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk -b admin:adminpw -d'
正如您所看到的,CA是用证书启动的,我已经尝试使用命令将其导入composer

作曲家身份导入-p org1-u admin-c/home/a/BC/yeasy/hyperledger/1.0/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/ca.org1.example.com-cert.pem-k/home/a/BC/yeasy/hyperledger/1.0/e2e_cli/crypto-config/peerOrganizations/org1.example.com/ca/c8433d3f02118963c5d340e95286e8869bb7bd455d0416a2ad451sk

当我运行命令composer runtime install-n ibor network-p org1-i admin-s adminpw(或任何composer命令)时,我收到一个类似以下的错误:; 错误:尝试安装链代码时出错。错误:未能反序列化创建者标识,错误提供的标识无效,Verify()返回x509:由未知授权机构签名的证书

你有什么办法让它工作吗

这是我的连接配置文件 { “类型”:“hlfv1”, “名称”:“org1”, “订购方”:[ { “url”:”grpc://localhost:7050", “hostnameOverride”:“order.example.com” } ], “ca”:{ “url”:“, “名称”:“ca-org1” }, “同行”:[ { “请求URL”:grpc://localhost:7051", “eventURL”:grpc://localhost:7053", “hostnameOverride”:“peer0.org1.example.com” }, { “请求URL”:grpc://localhost:8051", “eventURL”:grpc://localhost:8053", “hostnameOverride”:“peer1.org1.example.com” } ], “keyValStore”:“/home/a/.composer凭据”, “频道”:“商业频道”, “mspID”:“Org1MSP”, “超时”:“300”
}

要使用
composer install runtime
命令安装composer运行时,您需要导入加密资料,该资料定义为您计划安装的对等计算机的管理员。如果您使用的是cryptogen结构,那么每个组织都定义了一个管理员用户,您应该确保该组织中的每个对等方都使用该管理员用户(fabric示例应该已经这样做了)。该用户可以在对等组织的用户目录中找到,您需要msp/signcert中的文件作为公共证书,msp/keystore中的文件作为
composer identity import
命令的私钥。您可以随意调用该用户,但该用户是您为-i标志指定的用户。然后,您需要启动您的业务网络,为此,您需要使用通道管理员标识。我很确定所有的fabric示例都是对等管理员通道管理员,因此您可以使用
composer network start
并为-I选项指定该用户。这完全取决于您如何设置网络,不幸的是,为了在更复杂的网络上编写,您需要了解网络和频道的配置方式,以便使用编写器命令正确设置编写器

谢谢@david_k,通过找到signcert和keystore的正确组合,我成功地实现了这一点。如果有人想知道,我使用的是Yeasy的hyperledger图像()。出于某种原因,密钥库目录中有六个私有证书。我尝试了所有五个单独的,这是第五个组合的工作!