Hyperledger Composer v0.19搭配Fabric 0.11时卡片安装故障求助
我之前在适配Hyperledger Composer版本的时候也碰到过一模一样的卡片找不到问题,结合你用的Ubuntu 16.04.4 LTS、Composer v0.19.0以及ZeroToBlockchain项目的场景,你可以按照下面的步骤重新创建并导入有效的admin卡片,解决脚本报错的问题:
解决"card not found admin@zerotoblockchain-network"的步骤
1. 清理无效的旧卡片(可选但推荐)
首先先把系统里可能存在的无效旧卡片删掉,避免冲突:
composer card delete -c admin@zerotoblockchain-network
2. 重新生成Admin身份卡片
ZeroToBlockchain项目的Chapter03目录里应该已经有Fabric的加密配置文件(crypto-config目录),我们基于这个来创建新卡片:
- 先确认
crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp路径下,存在signcerts(存放管理员证书)和keystore(存放管理员私钥)两个文件夹。 - 执行卡片创建命令,注意替换命令里的
<私钥文件名>为keystore目录下实际的私钥文件(文件名通常是一串带_sk后缀的字符串):
composer card create -p connection.json -u admin -c crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/signcerts/Admin@org1.example.com-cert.pem -k crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp/keystore/<私钥文件名> -r PeerAdmin -r ChannelAdmin
执行成功后会生成一个admin@zerotoblockchain-network.card文件。
3. 导入新卡片到Composer
把刚生成的卡片导入系统:
composer card import -f admin@zerotoblockchain-network.card
4. 验证卡片有效性
导入后先测试卡片能不能正常连接网络:
composer network ping -c admin@zerotoblockchain-network
如果返回包含participant: org.hyperledger.composer.system.NetworkAdmin#admin的成功信息,说明卡片没问题了。
最后重新运行脚本
现在再回到Chapter03目录,执行./buildAndDeploy脚本,应该就不会再出现卡片找不到的报错了。
额外提醒
- 确保运行脚本前,Fabric的容器已经正常启动(可以用
docker ps查看容器状态); - 检查
connection.json里的节点地址、端口配置,要和当前运行的Fabric网络完全匹配,版本升级后可能存在配置变更的情况。
内容的提问来源于stack exchange,提问作者Achow
相关产品推荐
相关产品推荐

