Hyperledger Fabric 2.1 搭建教程
環境准備
版本
- Ubuntu 18.04
- go 1.14.4
- fabric 2.1
- fabric-sample v1.4.4
- nodejs 12.18.2
Docker 安裝
- 卸載舊版本
sudo apt-get remove docker docker-engine docker.io containerd runc
- 安裝依賴
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
- 添加 Docker 的官方 GPG 密鑰
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- 設定穩定版倉庫
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
- 更新源
sudo apt-get update
- 安裝
sudo apt-get install docker-ce docker-ce-cli containerd.io
- 添加當前用戶到docker用戶組
sudo usermod -aG docker johnny
- 安裝docker-compose
sudo apt-get install docker-compose
- 添加docker國內鏡像加速
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://e3jwyhhj.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
go 安裝
下載go的安裝包,放入/usr/local目錄下
sudo tar -zxvf go1.14.4.linux-amd64.tar.gz
vim ~/.profile
在末尾加上如下內容
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
export PATH=$PATH:/usr/local/go/bin
source ~/.profile
配置go的國內代理以加速訪問
echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
source ~/.profile
node 安裝(可選)
安裝node主要是為了測試我們的網絡用
cd ~/,運行
git clone https://github.com/nvm-sh/nvm.git .nvm
-
完成之后
cd ~/.nvm並且git checkout v0.35.3 -
然后運行安裝腳本
.install.sh,然后關閉當前shell重新打開,運行nvm,提示如下則代表安裝成功.

-
安裝
12.18.2版本nvm install 12.18.2
fabric-sample 克隆
創建如下目錄並進入,其中johnny為我的用戶名
/home/johnny/go/src/github.com/hyperledger
然后克隆fabric-sample
git clone https://github.com/hyperledger/fabric-samples.git
安裝二進制文件,網速不好的話這部分非常慢.
curl -sSL https://bit.ly/2ysbOFE | bash -s
如果這步實在無法搞定,那么下載我提供的
bootstrap.sh[鏈接:https://pan.baidu.com/s/1AL2DGMIYOVHo1tkYOBe_cA
提取碼:oz1k]腳本,手動運行.腳本主要包含三大功能,下載docker鏡像,Sample和二進制文件,編輯如下三個位置,設置成true則會執行,false則跳過,各位可以按需來弄.
DOCKER=true
SAMPLES=true
BINARIES=true
成功之后fabric-sample目錄下就會有bin目錄和config目錄,並且bin目錄下有如下文件\

加入PATH到 ~/.profile
export PATH=/home/johnny/go/src/github.com/hyperledger/fabric-samples
/bin:$PATH
source ~/.profile
之后在bash中輸入peer如果如圖顯示則代表配置成功.

測試
環境配好了需要測試一下,切到fabric-samples下的fabcar目錄
運行啟動網絡
./startFabric.sh
成功的話會顯示如下界面

同時用命令docker ps查看docker如下

cd javascript目錄下,運行npm install
之后運行
node enrollAdmin.js
提示如下則代表測試成功,enrollAdmin.js負責添加一個Admin用戶

node registerUser.js

node query.js ## 查詢

總結
看了各處的教程,發現都是Fabric1.4版本的,按照他們來弄最后創建網絡的時候總是報錯.本次參考官方的文檔搭建的基礎環境.能跑通官方的Fabcar示例代碼.
