天天看點

006/搭建fabric(二)

準備vmware虛拟機,并安裝完ubuntu系統後。繼續搭建fabric運作環境。。。

0。打開終端,切換root身份。目的:後續操作即可不用sudo...

右鍵-》open Terminal-》

//預設root使用者是無固定密碼的,并且是被鎖定的,如果想給root設定一個密碼
sudo passwd root
//輸入密碼 & 确認密碼

//切換root使用者
su root
//輸入密碼即可--root

//切換為普通使用者
su username      //eg:su yufeng      

1。安裝GIT

apt-get install git  //安裝git

git version  //檢視版本号      

2。安裝docker 和 docker-compose(必須)

//1.解除安裝舊版本的Docker
//舊版本的Docker被稱作docker或者docker-engine,Docker CE(社群版)包現在被叫做docker-ce。如果之前安裝過了,需要先解除安裝:

apt-get remove docker docker-engine docker.io

//2。使用存儲庫安裝docker

(一)。設定存儲庫

//【1】.更新apt安裝包索引

apt-get update

//【2】。安裝軟體包以允許apt通過HTTPS使用存儲庫:

apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

//【3】。添加Docker官方的GPG密鑰:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

//【4】。安裝穩定版倉庫
add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

(二)。安裝Docker-CE版

1。更新apt安裝包索引:

apt-get update

2-1。安裝最新版的Docker CE

apt-get install docker-ce

2-2。安裝指定版本的Docker CE

【1】。檢視docker版本

apt-cache madison docker-ce

【2】。安裝指定版本docker

apt-get install docker-ce=<VERSION>

3。通過運作hello-world鏡像驗證Docker CE已被正确安裝:

docker run hello-world //出現Hello from Docker表示成功

4.安裝docker-compose

[1].安裝pip
      
$ apt-get install python-pip  

[2].安裝docker-compose
           
$ pip install docker-compose>=1.8.0           

3。安裝node(必須)

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -

sudo apt-get install -y nodejs      

4。安裝GO及配置環境變量

【1】。下載下傳最新版本的go二進制檔案

将go的壓縮檔案下載下傳到指定目錄下(-P /opt :下載下傳到指定目錄/opt下)

wget -P /opt https://dl.google.com/go/go1.9.2.linux-amd64.tar.gz      
//解壓縮
sudo tar -C /opt -xzf go1.9.2.linux-amd64.tar.gz      

【2】。配置環境變量

vi /etc/profile      

在配置檔案末尾增加内容:

export GOROOT=/opt/go
export GOARCH=amd64
export GOOS=linux
export GOPATH=/opt/gopath
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN      

注意:上述将原部落格/etc/local修改為/opt是因為在執行fabric執行個體時,一直報order service有問題。。且指向/opt/gopath....異常

退出編輯,輸入以下指令使修改生效:

source /etc/profile      

檢視go環境是否安裝與配置成功

go version      

若出現:go version go1.9.2 linux/amd64 則表明配置成功!

說明:

關于GOPATH,這是go程式運作的目錄,也就是所有編寫的go程式都要放在這個目錄下。

根據上述配置,我們在~目錄先建立一個gopath檔案夾,然後建立三個檔案夾src,pkg,bin。

其中src存放源碼,pkg存放編譯生成的檔案,bin存放生成的可執行檔案。

5。下載下傳fabric

【1】。建立工作目錄

mkdir -p $GOPATH/src/github.com/hyperledger      

【2】。下載下傳fabric

cd ~/gopath/src/github.com/hyperledger
git clone -b release-1.0 https://github.com/hyperledger/fabric.git      

上述下載下傳完成之後,我們可以看到目前工作目錄下多了一個fabric的檔案夾,這就是我們下載下傳好的檔案,這裡面有我們需要的例子。

至此,我們的開發環境已經基本搭建完畢,下面将通過一個具體的例子下載下傳fabric1.0.5的鏡像并體驗運作效果。

6。運作Fabric執行個體

//切換工作路徑。進入scripts檔案夾下
cd ./fabric/scripts/
//檢視scripts檔案夾内容
ls      

目前路徑下面有許多的shell腳本檔案。

006/搭建fabric(二)
//下載下傳鏡像
./bootstrap.sh      
===> List out hyperledger docker images
hyperledger/fabric-tools       latest              6a8993b718c8        6 weeks ago         1.33GB
hyperledger/fabric-tools       x86_64-1.0.5        6a8993b718c8        6 weeks ago         1.33GB
hyperledger/fabric-couchdb     latest              9a58db2d2723        6 weeks ago         1.5GB
hyperledger/fabric-couchdb     x86_64-1.0.5        9a58db2d2723        6 weeks ago         1.5GB
hyperledger/fabric-kafka       latest              b8c5172bb83c        6 weeks ago         1.29GB
hyperledger/fabric-kafka       x86_64-1.0.5        b8c5172bb83c        6 weeks ago         1.29GB
hyperledger/fabric-zookeeper   latest              68945f4613fc        6 weeks ago         1.32GB
hyperledger/fabric-zookeeper   x86_64-1.0.5        68945f4613fc        6 weeks ago         1.32GB
hyperledger/fabric-orderer     latest              368c78b6f03b        6 weeks ago         151MB
hyperledger/fabric-orderer     x86_64-1.0.5        368c78b6f03b        6 weeks ago         151MB
hyperledger/fabric-peer        latest              c2ab022f0bdb        6 weeks ago         154MB
hyperledger/fabric-peer        x86_64-1.0.5        c2ab022f0bdb        6 weeks ago         154MB
hyperledger/fabric-javaenv     latest              50890cc3f0cd        6 weeks ago         1.41GB
hyperledger/fabric-javaenv     x86_64-1.0.5        50890cc3f0cd        6 weeks ago         1.41GB
hyperledger/fabric-ccenv       latest              33feadb8f7a6        6 weeks ago         1.28GB
hyperledger/fabric-ccenv       x86_64-1.0.5        33feadb8f7a6        6 weeks ago         1.28GB
hyperledger/fabric-ca          latest              002c9089e464        6 weeks ago         238MB
hyperledger/fabric-ca          x86_64-1.0.5        002c9089e464        6 weeks ago         238MB      

并且,這個腳本運作完畢之後,我們會發現目前目錄下多了一個bin檔案夾,這個檔案夾中所包含的可執行檔案正是我們運作例子所需要的。

006/搭建fabric(二)

現在我們需要把這個檔案夾複制到我們需要運作的例子的上層目錄中,輸入指令:

cp -rf bin/ ./../examples/      

接下來我們就可以運作官方給出的例子:e2e_cli

cd ./../examples/e2e_cli/

./network_setup.sh up      

正常運作結果:

關閉執行個體:

Ctrl+c

./network_setup.sh down      

本文參考部落格:

https://blog.csdn.net/diligent_lee/article/details/79141450

https://segmentfault.com/a/1190000009072224

本人操作過程中遇到的問題及解決方法

1。安裝git問題

https://askubuntu.com/questions/15433/unable-to-lock-the-administration-directory-var-lib-dpkg-is-another-process

采用指令行處理

006/搭建fabric(二)
006/搭建fabric(二)
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock      

View Code

2。docker安裝有問題。解除安裝docker

https://blog.csdn.net/CSDN_duomaomao/article/details/77683607

sudo apt-get purge docker-engine   //解除安裝docker
//解除安裝Docker及其依賴的不再需要的包(可能需要執行多次):
sudo apt-get autoremove --purge docker-engine      

3。Docker compose異常解決方法

https://stackoverflow.com/questions/36685980/docker-is-installed-but-docker-compose-is-not-why

$ curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` > ./docker-compose
$ sudo mv ./docker-compose /usr/bin/docker-compose
$ sudo chmod +x /usr/bin/docker-compose      

https://blog.csdn.net/pushiqiang/article/details/78682323

006/搭建fabric(二)