1. 基本環境安裝:hyperledger fabric 1.0依賴docker執行智慧型合約,需要先安裝docker和docker compose的執行環境。
(1) docker的安裝和使用
a) ubuntu安裝docker
方式一:終端輸入 sudo apt-get install docker.io
方式二:官方詳解
完成後可以使用docker -v檢視版本資訊。
b) 使用者加入到docker組
sudo groupadd docker ##新增使用者組
sudo usermod -ag docker $user ##非root使用者可以執行docker命令
c) 重啟docker服務
sudo service docker start
(2) docker compose的安裝和使用
使用通過pip進行安裝
sudo apt install python-pip
sudo pip install docker-compose
完成後可以使用docker-compose -v檢視版本資訊
遇到問題:
a) 要求公升級pip sudo pip install --upgrade pip
b) 公升級後執行pip命令報錯:importerror: cannot import name 'main'
解決方法:開啟pip配置檔案 sudo gedit /usr/bin/pip
將檔案中 from pip import main 改為 from pip._internal import main 儲存
git clone
cd fabric
git checkout -b v1.0.0
sudo unzip fabric-release-1.0.zip
sudo mv fabric-release-1.0 fabric ##重新命名
2. 超級賬本部署呼叫
#進入 fabric/scripts目錄,修改檔案屬性完成後使用docker images,至少包括以下內容chmod +x bootstrap.sh
./bootstrap.sh
(2)部署超級賬本網路
執行hyperledger需要較多初始化配置,該出先繞開初始化過程,本處先用fabric-samples為例,了解網路部署。
##在資料夾中解壓zip
sudo unzip fabric-samples-release-1.0.zip
sudo mv fabric-samples-release-1.0 fabric-samples ##重新命名
b) 利用docker-compose啟動容器
cd fabric-samples/basic-network
docker-compose -f docker-compose.yml up -d
成功啟動後,可使用docker ps檢視已啟動的容器
c) 切換到管理員,使用者再建立通道和加入通道
##切換到root(3) 鏈碼呼叫和查詢sudo -i
##切換環境到管理員使用者的msp,進入peer節點容器peer0.org1.example.com
#建立通道
peer channel create -o orderer.example.com:7050 -c mychannel -f /etc/hyperledger/configtx/channel.tx
#加入通道
peer channel join -b mychannel.block
#退出peer節點容器peer0.org1.example.com
exit
##進入cli容器安裝鏈碼和例項化
docker exec -it cli /bin/bash
# 給peer節點peer0.org1.example.com 安裝鏈碼
# 例項化鏈碼,a分為100,b分為200
peer chaincode instantiate -o orderer.example.com:7050 -c mychannel -n mycc -v v0 -c '
'
a) 查詢初始值,例如查詢a
b) 呼叫鏈碼,從「a」轉移10到「b」
peer chaincode invoke -c mychannel -n mycc -c c0 -c ''
再查詢a和b結果顯示,"a"的值為query result:90,"b"的值為query result:210。
超級賬本Fabric教程(一) 超級賬本入門
本節分享有關拆超級賬本的概念以及體驗部署過程。會員眾多 包括cisco ibm intel j.p.morgan 荷蘭 銀行 swift 等。擁抱監管和審查。良好的擴充套件性,可插入各種功能模組。成員管理 適合企業級應用 傳統的業務模型很難做到跨機構的交易被乙個互信的機構監督執行。每個交易方都有自己...
shell指令碼初體驗
去投遞簡歷的時候,經常看到shell指令碼優先?感覺值得摸索一下 關於shell指令碼的定義,在網上很多,就不過多描述了,其實就是把它當成乙個方法,在linux下執行而已 將許多指令封裝起來,方便下次呼叫,不用重複執照輪子 上 玩一玩 first blood bin bash first shell...
Liunx實現超級簽名詳細攻略(一)超級簽名簡介
ios超級簽名 缺點 乙個開發者賬號只能安裝100臺裝置,導致成本高。ios超級簽名原理 網上關於超級簽名原理很多,這裡簡單介紹一下。1.獲取使用者udid 2.把使用者的udid新增到開發者賬號中 4.替換,把原ipa包中的證書描述檔案替換掉 5.分發,通過ipa路徑匯出plist檔案,通過pli...