在Ubantu16.04下Hyperledger fabric開發環境的搭建
在Ubantu16.04下Hyperledger fabric開發環境的搭建
最近由於研究課題的需要,從原來的以太坊開發環境轉到了支援聯盟連開發的fabric。作為第一次接觸fabric的小白來講搭建開發環境著實是個讓人頭疼的問題,期間踩了無數個坑,看了很多博主的文章,也逛了一些論壇。終於,經過了三天的掙扎總算是搭建好了v1.0.0版本的開發環境。在此篇文章中,我將會給大家分享一些很實用的文章和安裝步驟。
1.依賴環境的安裝
安裝Git
sudo apt install git
檢視git版本
git version
安裝Docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
此處如果沒有安裝curl
要執行:
sudo apt install curl
因為國內下載Docker映象很慢,所以要使用映象加速器,在命令列中輸入下面命令
sudo mkdir -p /etc/docker
sudo gedit /etc/docker/daemon.json
{
"registry-mirrors": ["https://obou6wyb.mirror.aliyuncs.com"]
}
儲存並退出
如果不會使用vim可參看一下這個連結:
vim基本命令用法
sudo systemctl daemon-reload
sudo systemctl restart docker
**檢視Docker版本
docker version
安裝docker-compose
執行安裝命令
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
授權
sudo chmod +x /usr/local/bin/docker-compose
檢視版本資訊
docker-compose version
安裝golang
獲取安裝包
sudo wget https://dl.google.com/go/go1.11.linux-amd64.tar.gz
解壓
tar -zxvf go1.11.linux-amd64.tar.gz -C /usr/local
建立go工作目錄
sudo mkdir ~/go
配置環境變數
sudo vim /etc/profile
在開啟的vim中新增
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
使用source命令,使其配置資訊生效
source /etc/profile
檢視golang是否安裝成功
cd ~/go
檢視go的版本資訊
go version
檢視go的具體資訊
go env
在安裝golang的過程中有很多人會碰到開啟新的終端時顯示go未安裝,如果遇到此種情況可以採用下列辦法解決:
sudo vim ~/.bashrc
在開啟的檔案中輸入
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
fabric安裝
**準備工作**
cd ~/go
sudo mkdir -p src/github.com/hyperledger
下載fabric原始碼
cd ~/go/src/github.com/hyperledger
git clone https://github.com/hyperledger/fabric.git
進入 fabric 目錄檢視版本分支並切換分支
cd fabric
git checkout v1.0.0
下載fabric映象
cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli/
source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0
在此過程中可能會遇到source執行錯誤,沒有Docker許可權,可以用下面方法解決
sudo groupadd docker
sudo gpasswd -a ${USER} docke
sudo service docker restar
newgrp - docker
進行fabric網路測試
在剛才fabric/examples/e2e_cli/資料夾中執行下列操作
修改./e2e_cli/base/下的 peer-base.yaml
修改下面一行就行了
CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=e2e_cli_default
執行操作
bash ./network_setup.sh up
稍作等待如果出現
end-e2e
則說明測試成,若出現錯誤可看下面這個連結
e2e_cli執行常見錯誤解決辦法
手動測試Fabric網路
重新開啟一個命令列視窗,輸入:
docker exec -it cli bash
這時使用者為root@268dafdc900b,在/opt/gopath/src/github.com/hyperledger/fabric/peer目錄下,執行以下命令可以查詢a賬戶的餘額:
peer chaincode query -C mychannel -n mycc -c '{"Args":["query","a"]}'
可以看見餘額為:90
下面我們可以進行轉賬操作,操作為invoke ,由a轉b 50:
peer chaincode invoke -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n mycc -c '{"Args":["invoke","a","b","50"]}'
現在轉賬完畢, 我們試一試再查詢一下a賬戶的餘額,重複之前的查詢指令,結果為:
a的餘額只有40了,結果正確。
最後,我們需要關閉Fabric,這裡先使用exit命令退出cli容器。
exit
然後類似於啟動指令:
cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli
./network_setup.sh down
到這,我們整個Fabric的環境已經搭建完畢。希望本文對大家有所幫助!!
[1]https://blog.csdn.net/so5418418/article/details/78355868#commentsedit
[2]: https://www.jianshu.com/p/95e397570896
[3]: http://www.runoob.com/docker/docker-command-manual.html
[4]: http://www.cnblogs.com/studyzy/p/7437157.html
相關文章
- Hyperledger Fabric 2.x 環境搭建
- 在Ubuntu上部署Hyperledger Fabric環境Ubuntu
- 搭建Hyperledger Fabric 2.3.2開發環境及簡單案例執行開發環境
- Hyperledger Fabric 超級賬本 java開發區塊鏈環境搭建Java區塊鏈
- 基於Debian搭建Hyperledger Fabric 2.4開發環境及執行簡單案例開發環境
- Hyperledger超級賬本在Centos7下搭建執行環境CentOS
- ubuntu環境下搭建以太坊開發環境Ubuntu開發環境
- MAC 下的PHP開發環境搭建MacPHP開發環境
- Hyperledger Fabric(Hyperledger Fabric模型)模型
- MAC環境下PHP開發除錯環境搭建MacPHP除錯
- mac下搭建android 開發環境MacAndroid開發環境
- Flutter開發環境Window下搭建Flutter開發環境
- macOS下搭建Flutter開發環境MacFlutter開發環境
- linux下搭建wails開發環境。LinuxAI開發環境
- Windows下React Native開發環境的搭建WindowsReact Native開發環境
- Haskell 在 macOS 下的環境搭建HaskellMac
- Ubuntu下Python & Django開發環境搭建UbuntuPythonDjango開發環境
- 使用multipass在mac搭建linux開發環境MacLinux開發環境
- 在 macOS Catalina 10.15 搭建 PHP 開發環境MacPHP開發環境
- 在Mac OS中搭建superset開發環境Mac開發環境
- 在Windows10搭建WebAssembly開發環境WindowsWeb開發環境
- 搭建vue的開發環境Vue開發環境
- Hyperledger Fabric 通道配置檔案和容器環境變數詳解變數
- Get Started:Mac下搭建PHP開發環境MacPHP開發環境
- Linux下搭建Go語言開發環境LinuxGo開發環境
- 【記錄】WSL 下搭建前端開發環境前端開發環境
- MACOS 下搭建 E9 開發環境Mac開發環境
- linux(統信)下搭建electron開發環境Linux開發環境
- Linux下搭建FFmpeg開發除錯環境Linux除錯
- 區塊鏈開發Hyperledger Fabric入門區塊鏈
- Flutter開發入門之開發環境搭建(VSCode搭建Flutter開發環境)Flutter開發環境VSCode
- PearProject 在 WSL 下的開發環境部署教程Project開發環境
- Windows環境下的Nginx環境搭建WindowsNginx
- 區塊鏈學習之Fabric的環境搭建區塊鏈
- 1 – 搭建開發環境開發環境
- Androdi開發環境搭建開發環境
- Cordova 開發環境搭建開發環境
- GeoServer開發環境搭建Server開發環境