溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境

發(fā)布時間:2021-12-28 10:00:12 來源:億速云 閱讀:523 作者:小新 欄目:互聯(lián)網(wǎng)科技

小編給大家分享一下如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

Byfn.win 是Hyperledger Fabric著名的byfn.sh腳本的Windows版本的移植,用于幫助開發(fā)人員在Windows環(huán)境中快速搭建Hyperledger Fabric鏈碼及應(yīng)用開發(fā)環(huán)境。官方下載地址:http://sc.hubwiz.com/codebag/byfn-win/。

1、開發(fā)包概述

Byfn.win的主要特點如下:

  • 使用原生構(gòu)建的windows版本的Fabric程序,不需要安裝虛擬機/Linux子系統(tǒng)/Docker

  • 一鍵復(fù)位BYFN網(wǎng)絡(luò),一鍵啟動BYFN網(wǎng)絡(luò),為開發(fā)人員節(jié)省大量時間和精力

  • 支持TLS安全傳輸設(shè)置,支持solo共識和etcdraft共識

  • 支持Hyperledger Fabric官方及第三方提供的各種語言的鏈碼與應(yīng)用開發(fā)包

  • 解壓即用,綠色軟件

Byfn.win采用Golang開發(fā),目前版本是1.0.0,主要文件清單見官網(wǎng)說明:http://sc.hubwiz.com/codebag/byfn-win/

2、Byfn.win使用說明

2.1 生成BYFN網(wǎng)絡(luò)基礎(chǔ)資料

使用byfn.exereset子命令來生成或復(fù)位BYFN網(wǎng)絡(luò)運行所依賴的基礎(chǔ)資料:

如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境

注意:

  1. 每次執(zhí)行reset命令都會清空已有的區(qū)塊鏈數(shù)據(jù)和密碼學(xué)資料

  2. 節(jié)點的輸出日志在first-network/logs目錄下

2.2 啟動BYFN網(wǎng)絡(luò)

使用byfn.exeup子命令來啟動BYFN網(wǎng)絡(luò):

如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境

up子命令的選項如下:

  • --tls:啟用tls,默認(rèn):false

  • --full / -f:是否啟動所有節(jié)點,默認(rèn):false,僅啟動一個節(jié)點

  • --orderer / -o:選擇排序器實現(xiàn),默認(rèn):solo,可選:solo或etcdraft。

默認(rèn)情況下,byfn.win禁用TLS并僅啟動一個排序節(jié)點和一個對等節(jié)點,即:

  • orderer.example.com

  • peer0.org1.example.com

可以使用上述選項切換啟動設(shè)置,例如啟用tls、etcdraft排序并啟動所有peer節(jié)點:

如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境

2.3 進(jìn)入Peer節(jié)點管理控制臺

使用byfn.exeadmin子命令進(jìn)入peer節(jié)點的管理控制臺:

如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境

admin子命令的選項如下:

  • --peer / -p:設(shè)置節(jié)點編號,默認(rèn):0

  • --org / -o:設(shè)置機構(gòu)編號,默認(rèn):1

默認(rèn)情況下進(jìn)入peer0.org1.example.com的管理控制臺,可以使用上述選項進(jìn)入不同的peer節(jié)點的控制臺,例如進(jìn)入peer1.org2.example.com的管理控制臺:

byfn admin -p 1 -o 2

注意:

  1. 當(dāng)網(wǎng)絡(luò)啟用了TLS時,在進(jìn)入管理終端時也需要啟用tls,例如:

byfn admin --tls
  1. peer命令需要額外的tls相關(guān)的參數(shù),例如:

> peer channel list --tls --cafile=%ORDERER_CA%

其中環(huán)境變量ORDERER_CA中已經(jīng)設(shè)置了相應(yīng)的路徑,可以直接使用。

2.4 執(zhí)行端到端測試

進(jìn)入管理控制臺后,可以調(diào)用e2e.cmd來進(jìn)行基本的測試:

如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境

e2e.cmd主要執(zhí)行如下任務(wù):

  • 啟動預(yù)置的鏈碼chaincode_example02

  • 創(chuàng)建通道m(xù)ychannel

  • 將peer0.org1.example.com加入mychannel

  • 在peer0.org1.example.com安裝鏈碼mycc:0

  • 在通道m(xù)ychannle激活鏈碼mycc:0

  • 查詢鏈碼mycc:0的狀態(tài)

  • 提交交易修改鏈碼mycc:0的狀態(tài)

  • 再次查詢鏈碼mycc:0的狀態(tài)

  • 關(guān)閉鏈碼chaincode_example02

2.5 在管理控制臺使用fabric預(yù)置命令

e2e.cmd是一個標(biāo)準(zhǔn)的windows批處理文件,每一個命令都可以在管理控制臺單獨執(zhí)行。

例如,下面的三個命令分別用于查詢當(dāng)前所管理節(jié)點加入的通道、當(dāng)前節(jié)點安裝的鏈碼和指定通道激活的鏈碼:

如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境

3、使用byfn.win測試自己開發(fā)的鏈碼

首先使用up子命令啟動網(wǎng)絡(luò):

byfn up

然后啟動鏈碼應(yīng)用,例如啟動預(yù)置的nodejs鏈碼:

cd chaincode_example02/node
npm install
node index.js --peer.address=peer0.org1.examplecom:7052 --peer.id.name=myccjs:0

現(xiàn)在進(jìn)入管理終端,就可以進(jìn)行鏈碼的安裝、激活、查詢或交易操作了。

安裝鏈碼:

> peer chaincode install -n myccjs -v 0 -l node -p ..\chaincode_example02\node

激活鏈碼:

> peer chaincode instantiate -n myccjs -c "{\"Args\":[\"init\",\"tom\",\"1000\",\"mary\":\"2000\"]}" -C mychannel -o orderer.example.com

查詢鏈碼狀態(tài):

> peer chaincode query -n myccjs -c "{\"Args\":[\"invoke\",\"tom\"]}" -C mychannel

提交鏈碼交易:

> peer chaincode invoke -n myccjs -c "{\"Args\":[\"invoke\",\"tom\",\"mary\",\"100\"]}" -C mychannel -o orderer.example.com

注意:

  1. 在激活鏈碼之前,需要先啟動鏈碼

  2. 可以隨時修改鏈碼或重新運行鏈碼,不需要重新激活

4、使用byfn.win開發(fā)應(yīng)用

在執(zhí)行reset子命令時,會自動生成org1的連接配置文件:

  • connection-org1.json

  • connection-org1.yaml

Hyperledger Fabric官方提供的SDK可以直接使用上述連接配置文件, 可以根據(jù)自己的需要選擇json或yaml格式。


以上是“如何一鍵部署Fabric區(qū)塊鏈Windows開發(fā)環(huán)境”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI