我正在尝试将Hyperledger Composer连接到正在运行的Fabric部署,但是我收到了证书错误。以下是用于启动CA的docker composer文件的摘录
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/c843d3f021118963ce5d340e95286e8869bb7bd051454cd4166aa2887a2ad451_sk
当我运行命令composer runtime install -n ibor-network -p org1 -i admin -s adminpw(或任何composer命令)时,我收到类似于以下内容的错误; 错误:尝试安装链码时出错。错误:无法反序列化创建者身份,错误提供的身份无效,Verify()返回x509:由未知权限签名的证书
任何想法如何让这个工作?
这是我的连接个人资料 { "输入":" hlfv1", " name":" org1", " orderers":[ { " url":" grpc:// localhost:7050", " hostnameOverride":" orderer.example.com" } ] " ca":{ " url":" http://localhost:7054", " name":" ca-org1" }, "同龄人":[ { " requestURL":" grpc:// localhost:7051", " eventURL":" grpc:// localhost:7053", " hostnameOverride":" peer0.org1.example.com" }, { " requestURL":" grpc:// localhost:8051", " eventURL":" grpc:// localhost:8053", " hostnameOverride":" peer1.org1.example.com" } ] " keyValStore":" /home/a/.composer-credentials", "频道":" businesschannel", " mspID":" Org1MSP", "超时":" 300" }
答案 0 :(得分:1)
为了使用composer install runtime
命令安装composer运行时,您需要导入加密材料,该材料被定义为您计划安装的对等方的管理员。如果您使用的是cryptogen结构,那么每个组织都会定义一个管理员用户,您应该确保该组织中的每个对等方都使用该管理员用户(结构示例应该已经这样做了)。该用户可以在组织的users目录中找到,您需要msp / signcert中的文件用于公共证书,msp / keystore用于composer identity import
命令的私钥。您可以根据需要调用该用户,但这是您为-i标志指定的用户。然后,您需要启动业务网络,因为您需要使用渠道管理员身份。我很确定所有结构示例都会使同行管理员也成为渠道管理员,因此您可以使用composer network start
并为-i选项指定该用户。这一切都取决于你如何设置你的网络,不幸的是,为了在更复杂的网络上作曲,你需要了解如何配置网络和频道,以便利用作曲家命令来适当地设置作曲家