2017-09-19 151 views
0

我試圖Hyperledger作曲家連接到運行Fabric的部署,但我收到證書錯誤。下面是泊塢窗作曲家文件的摘錄,以啓動CA連接Hyperledger作曲家面料

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啓動時使用的證書,我已經嘗試使用下面的命令導入到作曲家這一點;

作曲家身份導入-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

當我運行命令作曲家運行安裝 - n ibor-network -p org1 -i admin -s adminpw(或任何作曲家命令)我收到類似於以下內容的錯誤; 錯誤:嘗試安裝chaincode時出錯。錯誤:無法反序列化創造者的身份,寧可提供的身份不合法,驗證()返回X509:證書由未知授權

任何想法如何得到這個工作簽署?

這裏是我的連接配置文件 { 「類型」: 「hlfv1」, 「名」: 「ORG1」, 「orderers」:[{ 「URL」:「GRPC://本地主機:7050 「 」hostnameOverride「: 」orderer.example.com「 } ], 」CA「:{ 」URL「: 」http://localhost:7054「, 」名稱「: 」CA-ORG1「 }, 」 同行「:[{ 」requestURL「: 」GRPC://本地主機:7051「, 」eventURL「:」 GRPC://本地主機: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’ }

回答

1

爲了使用composer install runtime命令你需要有進口加密材料,是安裝作曲家運行定義爲您計劃安裝的對等方的管理員。如果您使用cryptogen結構,那麼每個組織都定義一個管理員用戶,您應該確保該組織中的每個對等人都使用該管理員用戶(結構示例應該已經這樣做)。也就是說用戶可以在組織爲同行的用戶目錄中找到,你需要公證書和私鑰對composer identity import命令MSP /密鑰存儲在MSP/signcert文件。您可以調用該用戶所喜歡的任何內容,但這是您爲-i標誌指定的用戶。然後,您需要啓動您的業務網絡,因爲您需要使用頻道管理員身份。我敢肯定,所有的面料例子讓同行管理員有渠道管理員,以及因此會使用composer network start並指定用戶對於-i選項。這一切都取決於你如何設置你的網絡,不幸的是,爲了在更復雜的網絡上作曲,你需要了解如何配置網絡和頻道,以便利用作曲者命令來適當地設置作曲家。

+0

謝謝@david_k,我設法通過找到signcert和keystore的正確組合來實現這個工作。如果有人想知道,我正在使用Yeasy的hyperledger圖像(https://github.com/yeasy/docker-compose-files/tree/master/hyperledger/1.0)。出於某種原因,密鑰庫目錄中有六個私有證書。我嘗試了所有五個單獨的,這是第五個組合工作! –