本文是在閱讀《區(qū)塊鏈開發(fā)實(shí)戰(zhàn)-Hyperledger Fabric關(guān)鍵技術(shù)與案例分析》一書的同時(shí)性雄,在實(shí)踐中記錄的一些經(jīng)驗(yàn)與分享。
Hyperledger Fabric開發(fā)實(shí)戰(zhàn)-02簡單網(wǎng)絡(luò)
在搭建環(huán)境之前羹奉,我們需要明確軟件的版本秒旋,在我使用的環(huán)境中
- 操作系統(tǒng) ubuntu16.04.1
- go 1.11.1
- docker 17.06.2-ce
- docker-compose 1.23.1
1.軟件安裝
go語言安裝
打開鏈接https://golang.google.cn/dl/,找到對應(yīng)的1.11.1版本诀拭,使用wget下載并解壓
cd ~/software
wget https://dl.google.com/go/go1.11.1.linux-amd64.tar.gz
tar zxvf go1.11.1.linux-amd64.tar.gz
解壓完成后迁筛,需要設(shè)置GOPATH
sudo vim /etc/profile
export GOROOT=/home/ssj234/software/go1.11.1
export GOPATH=$GOROOT/bin
export PATH=$PATH:$GOPATH
查看go的版本
$ go version
go version go1.11.1 linux/amd64
docker安裝
首先使用apt-get update更新軟件源,
apt-get update
apt-get -y install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
apt-get -y update
apt-get -y install docker-ce=17.06.2-ce
# 驗(yàn)證安裝成功并查看版本
docker version
如果出現(xiàn)如下錯(cuò)誤
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.30/version: dial unix /var/run/docker.sock: connect: permission denied
需要加入
sudo gpasswd -a $USER docker #將登陸用戶加入到docker用戶組中
newgrp docker #更新用戶組
docker ps #測試docker命令是否可以使用sudo正常使用
docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# 驗(yàn)證安裝成功并查看版本
docker-compose --version
2.下載并編譯Fabric
首先耕挨,需要下載fabric源碼
mkdir -p $GOPATH/src/github.com/hyperledger
cd $GOPATH/src/github.com/hyperledger
git clone http://gerrit.hyperledger.org/r/fabric
安裝軟件依賴,用于創(chuàng)建docker鏡像時(shí)使用
go get github.com/golang/protobuf/protoc-gen-go
mkdir $GOPATH/src/github.com/hyperledger/fabric/build/docker/gotools/bin
cp $GOPATH/bin/protoc-gen-go $GOPATH/src/github.com/hyperledger/fabric/build/docker/gotools/bin
最后细卧,需要編譯fabric,書中使用的是1.1.0-snapshot-900850f版本筒占,由于不知道如何獲取指定的快照版本贪庙,我們使用v1.0.0版本
cd $GOPATH/src/github.com/hyperledger/fabric
# 切換版本
git checkout v1.0.0
make release
make docker
編譯完成后,可執(zhí)行文件路徑在源碼下翰苫,為了便于使用止邮,我們將其拷貝到系統(tǒng)路徑下
# 編譯完成后的路徑
$GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin
cp $GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin/* /usr/local/bin
完成之后这橙,輸入如下命令驗(yàn)證:
peer version
orderer version
cryptogen version
configtxgen version
configtxlator version
至此,我們完成了fabric及其相關(guān)依賴軟件的安裝导披,下面屈扎,就要開始第一個(gè)例子搭建一個(gè)fabric運(yùn)行網(wǎng)絡(luò)了。