使用VirtualBox并在其中安裝好Ubuntu
這一步其實沒啥好說的,下載下傳好最新版的VirtualBox,下載下傳Ubuntu Server,我用的是Ubuntu16.04.2 X64 Server。在安裝完Ubuntu後,需要保證apt source是國内的,不然如果是國外的話會很慢很慢的。具體做法是
sudo vi /etc/apt/sources.list
打開這個apt源清單,如果其中看到是http://us.xxxxxx之類的,那麼就是外國的,如果看到是http://cn.xxxxx之類的,那麼就不用換的。我的是美國的源,是以需要做一下批量的替換。在指令模式下,輸入:
:%s/us./cn./g
就可以把所有的us.改為cn.了。然後輸入:wq即可儲存退出。
sudo apt-get update
更新一下源。
然後安裝ssh,這樣接下來就可以用putty或者SecureCRT之類的用戶端遠端連接配接Ubuntu了。
sudo apt-get install ssh
2. Go的安裝
Ubuntu的apt-get雖然提供了Go的安裝,但是版本比較舊,最好的方法還是參考官方網站 https://golang.org/dl/ ,下載下傳最新版的Go。具體涉及到的指令包括:
wget https://storage.googleapis.com/golang/go1.10.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.10.linux-amd64.tar.gz
接下來編輯目前使用者的環境變量:
vi ~/.profile
添加以下内容:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
編輯儲存并退出vi後,記得把這些環境載入:
source ~/.profile
我們把go的目錄GOPATH設定為目前使用者的檔案夾下,是以記得建立go檔案夾
cd ~
mkdir go
3. Docker-CE安裝
由于docker鏡像有時候不正常,請改成docker-ce
Docker CE鏡像源站
使用官方安裝腳本自動安裝
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
手動安裝幫助
Ubuntu 16.04(使用apt-get進行安裝)
# step 1: 安裝必要的一些系統工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安裝GPG證書
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 寫入軟體源資訊
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安裝 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce
# 安裝指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# apt-cache madison docker-ce
# docker-ce | 17.03.1~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# docker-ce | 17.03.0~ce-0~ubuntu-xenial | http://mirrors.aliyun.com/docker-ce/linux/ubuntu xenial/stable amd64 Packages
# Step 2: 安裝指定版本的Docker-CE: (VERSION 例如上面的 17.03.1~ce-0~ubuntu-xenial)
# sudo apt-get -y install docker-ce=[VERSION]
4. Docker-Compose的安裝
這裡注冊下阿裡雲https://cr.console.aliyun.com/cn-hangzhou/mirrors,psv50kmi是我的賬号
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://psv50kmi.mirror.aliyuncs.com"] }
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
5. Fabric源碼下載下傳
我們可以使用Git指令下載下傳源碼,首先需要建立對應的目錄,然後進入該目錄,Git下載下傳源碼:
mkdir -p ~/go/src/github.com/hyperledger
cd ~/go/src/github.com/hyperledger
git clone https://github.com/hyperledger/fabric.git
由于Fabric一直在更新,所有我們并不需要最新最新的源碼,需要切換到v1.0.0版本的源碼即可:
cd ~/go/src/github.com/hyperledger/fabric
git checkout v1.0.0
6. Fabric Docker鏡像的下載下傳
這個其實很簡單,因為我們已經設定了Docker Hub鏡像位址,是以下載下傳也會很快。官方檔案也提供了批量下載下傳的腳本。我們直接運作:
cd ~/go/src/github.com/hyperledger/fabric/examples/e2e_cli/
source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0
這樣就可以下載下傳所有需要的Fabric Docker鏡像了。由于我們設定了國内的鏡像,是以下載下傳應該是比較快的。
下載下傳完畢後,我們運作以下指令檢查下載下傳的鏡像清單:
docker images
7.啟動Fabric網絡并完成ChainCode的測試
我們仍然停留在e2e_cli檔案夾,這裡提供了啟動、關閉Fabric網絡的自動化腳本。我們要啟動Fabric網絡,并自動運作Example02 ChainCode的測試,執行一個指令:
./network_setup.sh up
這個做了以下操作:
7.1編譯生成Fabric公私鑰、證書的程式,程式在目錄:fabric/release/linux-amd64/bin
7.2基于configtx.yaml生成創世區塊和通道相關資訊,并儲存在channel-artifacts檔案夾。
7.3基于crypto-config.yaml生成公私鑰和證書資訊,并儲存在crypto-config檔案夾中。
7.4基于docker-compose-cli.yaml啟動1Orderer+4Peer+1CLI的Fabric容器。
7.5在CLI啟動的時候,會運作scripts/script.sh檔案,這個腳本檔案包含了建立Channel,加入Channel,安裝Example02,運作Example02等功能。
8.手動測試一下Fabric網絡
我們仍然是以現在安裝好的Example02為例,在官方例子中,channel名字是mychannel,鍊碼的名字是mycc。我們首先進入CLI,我們重新打開一個指令行視窗,輸入:
docker exec -it cli bash
由于版本1.0有問題,請改一條
sudo vim peer_bash.yaml
e2ecli改成e2e_cli
轉載:https://www.cnblogs.com/studyzy/p/7437157.html