2017-06-14 122 views
1

我正在遵循Hyperledger fabric-ca getting started指南並使用Hyperledger Fabric alpha2。如何使用docker將我的Orderer和Peers鏈接到Fabric-CA

這裏是我想要做什麼:

  • 啓動織物CA
  • 連接使用之前創建
  • 以及後來的憑據訂貨和同行織物-CA,只允許授權用戶的chaincode和訪問調用它們的屬性

我開始我的布-CA服務器,registrered一個新的ID實體(例如對等)並註冊它。一個msp目錄是由密鑰庫,signcerts,cacerts生成的。 也生成了fabric-ca msp目錄et ca-cert.pam。

要開始訂貨,我使用這個命令:

docker run -it --name orderer.example.com -p 7050:7050 
-v $DIR/crypto-config/.../orderers/orderer.example.com:/var/hyperledger/orderer/msp 
-v $DIR/orderer.block:/var/hyperledger/orderer/orderer.block 
-w /opt/gopath/src/github.com/hyperledger/fabric 
-e ORDERER_GENERAL_LOGLEVEL=debug 
-e ORDERER_GENERAL_LISTENADDRESS=0.0.0.0 
-e ORDERER_GENERAL_GENESISMETHOD=file 
-e ORDERER_GENERAL_GENESISFILE=/var/hyperledger/orderer/orderer.block 
-e ORDERER_GENERAL_LOCALMSPID=OrdererMSP 
-e ORDERER_GENERAL_LOCALMSPDIR=/var/hyperledger/orderer/msp 
hyperledger/fabric-orderer 

我如何開始我的訂貨和同齡人,並告訴他們「連接」使用泊塢窗布-CA?我應該使用哪個環境變量?我只是不太瞭解這些實體之間的通信是如何工作的。

回答

2

https://hyperledger-fabric.readthedocs.io/en/latest/getting_started.html的一般項目文檔包括一個docker compose文件,它將啓動一個訂購者,4個對等者和兩個CA服務器。要查看的文件是docker-compose-e2e-template.yaml。如果要運行CA服務器的示例,可以通過適當地更改COMPOSE_FILE變量來將network_setup.sh更改爲使用docker-compose-e2e.yaml

+0

我已經嘗試過了,它會啓動ca服務器和其他容器,但ca服務器不會「使用」。 cli容器可以查詢示例的鏈代碼(在'mychannel'通道上的PEER3上查詢成功),但是當我查看ca日誌時,我沒有看到任何請求,只是「在https:////0.0.0.0上進行監聽:7054" 。似乎ca服務器和其他容器之間沒有「鏈接」。我不知道在哪裏告訴我的其他容器「連接」到CA – ecn

+0

一旦您使用CA和Peers進行網絡設置,嘗試通過一些end2end集成測試。 fabric-java-sdk和fabric-node-sdk項目都具有將CA服務器與Peers結合使用的集成測試。 –

0

當您將您的Orderer和Peers鏈接到Fabric-CA時註冊並註冊。你怎麼說,Fabric-CA生成你需要的MSP的密鑰。

然後,當你創建通道交易神器:

  • 您可以定義哪些成員將參加的通道。
  • 您可以爲每個成員定義MSP目錄,並介紹必要的證書。

然後,您進入對等並創建通道。在那裏,您將使用您之前創建的渠道交易工件。之後,每個同行都應加入該頻道。

您通過MSP「連接」到Fabric-CA。

簡單:你只需要面料-CA生成密鑰對。一旦你註冊了Orderer和Peer,你就不需要Fabric-CA。所以,最好停下來。如果您再次需要Fabric-CA,您將重新啓動它。

0

的訂貨和同行過程不打開到織物-CA-服務器的連接。他們只是從「msp」目錄中讀取。

爲了在訂購者或對等方啓動之前創建「msp」目錄,您可以使用「fabric-ca-client enroll -u」命令,如http://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html#enrolling-a-peer-identity所述。

另請參閱此更改集https://gerrit.hyperledger.org/r/#/c/10871/並注意評論。它提供了一種使用fabric-ca而不是cryptogen運行fabric/examples/e2e_cli示例的方法,該示例包括註冊訂閱者和對等者。特別參見我認爲非常易讀的https://gerrit.hyperledger.org/r/#/c/10871/6/examples/e2e_cli/fabric-ca-cryptogen.sh的fabric-ca-cryptogen.sh腳本。

相關問題