寫在前,第一次搭建fabric框架,對於小白的我非常艱辛,參考了不少博主的博客才最終完成,在此記錄一下搭建過程。html
http://www.javashuo.com/article/p-hoddrlef-nt.html
http://www.javashuo.com/article/p-bqrjkdsd-nt.html
http://www.javashuo.com/article/p-ddiccgkg-hq.html
https://blog.csdn.net/qq_41547659/article/details/108190245python
方法:進入system setting 而後點擊software and update,修改download from
linux
#先更新apt-get #apt-get能夠用於運做deb包(debian系統:unbuntu) #yum能夠用於運做rpm包(redhat系統:centos) sudo apt-get update #安裝vim sudo apt-get install vim #安裝git sudo apt-get install git #安裝curl sudo apt-get install curl #在命令行中利用URL進行數據或者文件傳輸 #安裝wget sudo apt-get install wget #wget不是安裝方式,它是一種下載工具,相似於迅雷。
2.1下載安裝包git
cd ~ //進入到根目錄下 wget https://studygolang.com/dl/golang/go1.14.linux-amd64.tar.gz //這裏我下載的是1.14版本 tar -xzf go1.14.linux-amd64.tar.gz //解壓 sudo mv go /usr/local //移動
2.2配置環境
編輯配置文件github
vim /etc/profile
將環境變量加入golang
export PATH=$PATH:/usr/local/go/bin #可執行文件存放 export GOROOT=/usr/local/go #安裝目錄 export GOPATH=$HOME/go #工做目錄 export PATH=$PATH:$HOME/go/bin #添加PATH路徑
保存配置文件docker
source /etc/proflie
go version #執行命令若是看到go的版本號,說明已經安裝好了
3.1卸載舊版本的Docker,沒安裝的就跳過此步json
sudo apt-get remove docker docker-engine docker.io
3.2開始安裝bootstrap
sudo apt-get update #下載安裝工具 sudo apt-get install \ apt-transport-https \ ca-certificates \ software-properties-common #添加官方密鑰 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - #加入 apt 倉庫中 sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" #下載docker-ce sudo apt-get update #apt-get update是同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,這樣才能獲取到最新的軟件包。 sudo apt-get install docker-ce
完成上面操做以後輸入ubuntu
docker version #查看版本信息
輸出下面信息
Client: Docker Engine - Community
Version: 19.03.13
API version: 1.40
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:02:59 2020
OS/Arch: linux/amd64
Experimental: false
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.40/version: dial unix /var/run/docker.sock: connect: permission denied
此時已經安裝好Docker了,可是還須要一些小操做。由於普通用戶沒有權限 。
sudo groupadd docker #建立docker組 sudo usermod -aG docker XXX #(XXX是當前用戶名)
下面添加阿里雲的Docker鏡像:
sudo vim /etc/docker/daemon.json #將如下內容寫入daemon.json { "registry-mirrors": ["https://obou6wyb.mirror.aliyuncs.com"] } #接下來輸入: sudo systemctl daemon-reload sudo systemctl restart docker docker version
若是還有權限不足提示,輸入:
sudo chmod -R 777 /var/run/docker.sock
正確的結果:
Client: Docker Engine - Community
Version: 19.03.13
API version: 1.40
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:02:59 2020
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.13
API version: 1.40 (minimum version 1.12)
Go version: go1.13.15
Git commit: 4484c46d9d
Built: Wed Sep 16 17:01:30 2020
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.3.7
GitCommit: 8fba4e9a7d01810a393d5d25a3621dc101981175
runc:
Version: 1.0.0-rc10
GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd
docker-init:
Version: 0.18.0
GitCommit: fec3683
到此docker安裝完畢
docker-compose 是支持經過模板腳本批量建立 docker 容器的一個組件
#首先須要安裝pip sudo apt-get install python-pip #更新pip pip install --upgrade pip #經過pip下載docker-compose sudo pip install docker-compose #查看版本 docker-compose -version docker-compose version 1.26.2, build unknown #出現就表示安裝完成
首先建立文件夾
cd ~ mkdir -p go/src/github.com/hyperledger/ #進入剛剛建立的文件夾內 cd go/src/github.com/hyperledger/
下載 fabric 源碼:
git clone https://github.com/hyperledger/fabric.git
將 fabric 切換至 1.4 版本:
cd fabric git branch -a #git checkout release-1.4 git checkout v1.4.2 #我選的1.4.2版本
下載所需的鏡像
#進入到指定目錄 cd ~/go/src/github.com/hyperledger/fabric/scripts #自動下載對應版本所須要的鏡像 sudo ./bootstrap.sh #這裏因爲網絡緣由只下載了fabric-samples
bootstrap.sh實際上幫咱們做了以下幾件事情:
可是因爲網絡問題,Fabric的二進制可執行文件和配置文件沒法下載,此時進行手動安裝
wget https://github.com/hyperledger/fabric/releases/download/v1.4.2/hyperledger-fabric-linux-amd64-1.4.2.tar.gz wget https://github.com/hyperledger/fabric-ca/releases/download/v1.4.2/hyperledger-fabric-ca-linux-amd64-1.4.2.tar.gz tar xzvf hyperledger-fabric-linux-amd64-1.4.2.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/ tar xzvf hyperledger-fabric-ca-linux-amd64-1.4.2.tar.gz -C $GOPATH/src/github.com/hyperledger/fabric-samples/ #向/etc/profile中寫入環境變量 export PATH=$GOPATH/src/github.com/hyperledger/fabric/scripts/fabric-samples/bin:$PATH #使環境變量生效 source /etc/profile
下面下載Fabric的docker鏡像
sudo ./bootstrap.sh -b -s
至此,fabric1.4.2的環境安裝完成,完成上面的操做,就能夠啓動第一個fabric網絡了。
#進入first-network文件夾 cd ~/go/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network/ #建立第一個 channel(myfirstchannel 爲通道名稱,不寫默認爲 mychannel,能夠本身定義): sudo ./byfn.sh -m generate -c myfirstchannel #執行命令啓動 sudo ./byfn.sh up
若是最後輸出內容爲
===================== Query successful on peer1.org2 on channel 'mychannel' ===================== ========= All GOOD, BYFN execution completed =========== _____ _ _ ____ | ____| | \ | | | _ \ | _| | \| | | | | | | |___ | |\ | | |_| | |_____| |_| \_| |____/
說明咱們的fabric網絡已經成功搭建完畢。
#最後執行如下命令關閉網絡 ./byfn.sh down
到此,unbuntu16.04搭建單機的fabric1.4.2環境到此完成,謝謝你們觀看。