docker - Hyperledger Fabric v2 新链代码生命周期安装问题与 dind vm 端点 + tls

标签 docker ssl hyperledger-fabric hyperledger-fabric-ca hyperledger-chaincode

在使用新的 v2 链代码生命周期时遇到问题,我正在使用 docker vm dind 端点 https://127.0.0.1启用 tls 后,对等方已设置所有 docker 客户端加密 Material

CORE_VM_DOCKER_TLS_ENABLED=true
CORE_VM_DOCKER_TLS_CERT=/tmp/org1/peer1/docker/cert.pem
CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=host
CORE_VM_DOCKER_TLS_KEY=/tmp/org1/peer1/docker/key.pem
CORE_VM_ENDPOINT=https://127.0.0.1:2376
CORE_VM_DOCKER_TLS_CA=/tmp/org1/peer1/docker/ca.pem

正在尝试安装链代码包。

peer lifecycle chaincode install patient_consent-v0.0.1-package.tar.gz \
     --peerAddresses fabric-dev-peer1-org1:7051 --connTimeout 10s \
     --tlsRootCertFiles /tmp/org1/peer1/tls/msp/cacerts/fabric-dev-tlsca-org1-7052.pem \
     -o fabric-dev-orderer1-org1:7050 --tls --cafile /tmp/org1/peer1/tls/msp/cacerts/fabric-dev-tlsca-org1-7052.pem

这给了我

Error: chaincode install failed with 
status: 500 - failed to invoke backing implementation of 'InstallChaincode'
could not build chaincode
docker build failed
docker image inspection failed
Get https://127.0.0.1:2376/images/dev-peer1-org1-patient_consent-v0.0.1-9aedb4f5f58cb4bf18cf38f53751928caf9074c4bcb6859d8417fb37c09ab596-0acf342a6da8bfef85ec6b4d9dbe3ca4236ab9e52d903bb9fb014db836696d7b/json
remote error: 
tls: bad certificate

最佳答案

在 peer chaincode install 命令中,您为排序节点设置了错误的 tlsRootCertFiles。 --cafile 与对等方相同。它是订购者 CA 文件。

--tlsRootCertFiles /tmp/org1/peer1/tls/msp/cacerts/fabric-dev-tlsca-org1-7052.pem \

 -o fabric-dev-orderer1-org1:7050 --tls --cafile /tmp/org1/peer1/tls/msp/cacerts/fabric-dev-tlsca-org1-7052.pem

通常当您启动测试网络 (2.0/1) 时,排序者 tls CA 文件位于 organizations/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca .example.com-cert.pem
您可以检查您的设置并为订购者设置正确的路径 --cafile 标志。

关于docker - Hyperledger Fabric v2 新链代码生命周期安装问题与 dind vm 端点 + tls,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60868256/

相关文章:

docker - Kubernetes 服务连接被拒绝,如何访问服务?

Node.js Fetch 说证书过期

hyperledger-fabric - 当我尝试使用 Hyperledger Fabric 创建 channel 时,请求失败

ssl - Ansible,如何信任证书?

hyperledger-fabric - 颁发身份 super 账本 Composer 时授权失败

go - 如何将 Go 客户端应用程序连接到 IBM VS Code Fabric Extension?

python - Dockerized Python Flask REST API 显示 "The page isn' t 正常工作

database - Docker/Oracle数据库/卷持久化/创建表空间

amazon-web-services - Elastic Beanstalk 单容器 Docker - 使用 awslogs 日志记录驱动程序

ssl - 此证书具有无效的颁发者钥匙串(keychain)