記錄本身第一次搭建本地fabric框架

寫在前,第一次搭建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

一.前期準備

1.系統軟件源改成 aliyun

方法:進入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.安裝GO

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.docker安裝

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安裝完畢

4.docker-compose安裝

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 #出現就表示安裝完成

二.fabric框架搭建

首先建立文件夾

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實際上幫咱們做了以下幾件事情:

  1. 從github上克隆 hyperledger/fabric-samples並進入該目錄,而後檢出適當的版本
  2. 在fabric-samples目錄下安裝特定平臺的 Hyperledger Fabric 二進制可執行文件bin 和配置文件config
  3. 下載 指定版本的Hyperledger Fabric 的docker鏡像

具體能夠看這篇:Fabric 環境搭建時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環境到此完成,謝謝你們觀看。

相關文章
相關標籤/搜索