$ cd fabric-samples/first-network
在first-network
目錄下有兩個自動化指令碼byfn.sh
和eyfn.sh
, 這兩個指令碼的啟動順序是先執行byfn.sh再執行eyfn.sh(eyfn.sh不是必須的,eyfn.sh的作用稍後介紹)
檢視幫助資訊:
$ ./byfn.sh --help
up:啟動
down:清除網路
restart:重新啟動
generate:生成證書及創世塊
upgrade:將網路從1.0公升級到1.1
-c:用於指定channelname,預設值"mychannel"
-t:cli timeout時間,預設值10
-d:延遲啟動,預設值3
-f:使用指定的網路拓撲結構檔案,預設使用docker-compose-cli.yaml
-s:指定使用的資料庫,可選 goleveldb或couchdb
-l:指定chaincode使用的語言,可選golang 或node
-i:指定映象tag,預設 "latest"
詳細引數可通過./byfn.sh help檢視
為各種網路實體生成所有證書和金鑰,用於引導訂購服務以及配置通道所需的一系列配置事務
$ sudo ./byfn.sh -m generate
$ sudo ./byfn.sh -m up
如果啟動發生錯誤,則執行關閉命令後再次執行啟動命令
最後輸出如下內容代表啟動且測試成功
**********==== query on peer1.org2 on channel 'mychannel' is successful ***************=
*****==== all good, byfn execution completed **********=
或者通過node.js啟動網路./byfn.sh -m up -l node
first-network會生成1個orderer+4個peer+1個cli的網路結構,整個網路包括2個org
$ sudo ./byfn.sh -m down
關閉網路之後, 可以一步一步地探索網路設定. 將殺死容器, 刪除加密檔案, 並從docker registry中刪除鏈碼影象
若在啟動網路時遇到如下錯誤
oci runtime exec failed: exec failed: container_linux.go:348: starting container process caused "exec: \"scripts/script.sh\": stat scripts/script.sh: no such file or directory": unknown
或者
error: encountered errors while bringing up the project.
error!!
!!unable
tostart
network
則執行./byfn.sh down
清除網路後再啟動 Fabric 自動部署
部署大多都是一些重複的工作,故在這裡記錄一下學習fabric的過程,借鑑了網上的大神和文件,留作紀念。sudo pip install fabric sudo 取決於os主要參考 官方文件 from fabric.api import local,lcd deftest local with lcd...
fabric 自動化部署
專案發布和運維的工作相當機械,頻率還蠻高,導致時間浪費在敲大量重複的命令上。修復bug什麼的,測試,提交版本庫 2分鐘 ssh到測試環境pull部署 2分鐘 rsync到線上機器a,b,c,d,e 1分鐘 分別ssh到abcde五颱機器,逐一重啟 8 10分鐘 13 15分鐘 其中鬱悶的是,每次操作...
有關自動化部署Fabric
要部署多台生產伺服器的時候,一台一台去配置不方便,所以我們需要自動化部署的方式來部署。本文採用的是fabric,在ubuntu 64 上實現。fabric python內建的模組,用來提高基於 ssh 的應用部署和系統管理效率。可以實現與遠端伺服器的自動化互動。一般使用情況為需要運維幾台至幾百台機器...