一 超級賬本初體驗

2022-05-24 23:33:11 字數 2770 閱讀 5392

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目錄,修改檔案屬性

chmod +x bootstrap.sh

./bootstrap.sh

完成後使用docker images,至少包括以下內容

(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

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 '

'

(3) 鏈碼呼叫和查詢

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...