Ubuntu部署基於Fabric的虛擬區塊鏈服務

2021-08-10 17:39:21 字數 2973 閱讀 6003

關於hyperledger fabric的部署適合在ubuntu或其它linux上進行,本例在ubuntu16.04lts上操作。如果是windows、macos系統,建議安裝virtual box,在虛擬機器上部署區塊鏈環境。

準備:

1、源需要換成國內源,這樣速度能快很多。

參考:參考:

3、修改你的許可權

sudo usermod -ag docker user_name

4、登出並重新登入,然後新增阿里雲的docker hub映象(一定要登出後再重啟docker服務!!)

參考:5、sudo systemctl daemon-reload

sudo systemctl restart docker

6、安裝python-pip

sudo apt-get install python-pip

7、安裝docker-compose

直接執行指令碼:

curl -l -s`-`uname -m` > ~/docker-compose

sudo mv ~/docker-compose /usr/local/bin/docker-compose 

chmod +x /usr/local/bin/docker-compose

部署:1、建立fabric目錄,用git拉取原始碼

2、切換v1.0.0版本的原始碼

啟動:1、在e2e_cli資料夾內,啟動fabric網路的自動化指令碼。

./network_setup.sh up

2、啟動成功,則出現如下:

測試:1、測試官方example,開啟另乙個終端:

餘額(query result)顯示為90。

2、再把a賬戶的餘額全部轉給b賬戶,執行命令:

執行結果為:

3、再次查詢a的餘額,結果為:

4、退出cli容器:exit

5、關閉fabric網路:./network_setup.sh down

ps: 鏈碼除錯方法(在fabric-sample下)

# 啟動網路

1$ cd fabric-samples/chaincode-docker-devmode

1$ docker-compose -f docker-compose-******.yaml up -d

# 進入鏈碼容器

2$ docker exec -it chaincode bash

# 編譯鏈碼

2$ cd [鏈碼目錄]

2$ go build -o [可執行檔案]

# 部署鏈碼

2$ core_peer_address=peer:[埠號] core_chaincode_id_name=[例項]:0 ./[可執行檔案]

# 啟動測試容器

3$ docker exec -it cli bash

# 安裝鏈碼

3$ cd ..

3$ peer chaincode install -p [可執行檔案的所在目錄路徑] -n [例項] -v [版本號]

# 例項化鏈碼

3$ peer chaincode instantiate -n [例項] -v [版本號] -c '' -c [通道]

# 呼叫鏈碼

3$ peer chaincode invoke -n [例項] -c '' -c [通道]

docker常用命令:

1)刪除乙個容器

docker rm

2)強制刪除乙個容器

docker rm -f

3)強制刪除全部容器

docker rm -f $(docker ps -aq)

4)刪除乙個映象:

docker rmi

5)強制刪除乙個映象:

docker rmi -f

6)強制刪除全部映象

docker rmi -f $(docker images -q)

SVN 部署(基於 Linux)

1 通過 yum 命令安裝 svnserve,命令如下 此命令會全自動安裝svn伺服器相關服務和依賴,安裝完成會自動停止命令執行 yum y install subversion 若需檢視svn安裝位置,可以用以下命令 rpm ql subversion 2 建立版本庫目錄 此僅為目錄,為後面建立版...

ubuntu 安裝部署apache

解壓出httpd 2.2.19資料夾 進入httpd 2.2.19資料夾 3.編譯檔案 設定引數及路徑 像以上這樣設定編譯後apache在modules資料夾將沒有乙個dso模組動態載入!使用.configure help檢視幫助!如下設定 enable mods shared most表示載入大多...

ubuntu安裝部署devstack

安裝環境 新增乙個stack使用者 sudo useradd s bin bash d opt stack m stack給stack使用者新增sudo許可權 sudo tee stack all all nopasswd all etc sudoerssudo su stackgit clone ...