Hyperledger Fabric學習筆記(二)- Fabric 2.2.1環境搭建
一、參考文章如下:
1、http://blog.csdn.net/zhanglingge/article/details/106208491
2、http://blog.csdn.net/qq_43613303/article/details/105828981
3、http://blog.csdn.net/jambeau/article/details/107551208
二、前期環境準備:
1、環境:Windows 10 + VMware Workstation 15 + Ubuntu20.10
2、首先,去下載Ubuntu20.10的映象檔案,也就是iso檔案,地址如下:http://mirrors.aliyun.com/ubuntu-releases/20.10/ubuntu-20.10-desktop-amd64.iso
3、接著開啟VMware虛擬機器,新建一個虛擬機器,自定義安裝剛剛下載的iso映象檔案,然後一步步操作,按安裝提示,新建一個使用者,輸入密碼,地區選擇中國所在的某個地區,一步步照著來就行了,如下圖所示,可能需要一點時間:
4、安裝成功後輸入你剛才新建的使用者和密碼,進去即可,滑鼠右鍵,選擇Open in Terminal,即開啟終端視窗:
(1)、首先切換到root使用者,輸入命令su root,如下圖所示:
因為我最開始是沒有設定root使用者,預設建立了linyexiong這個使用者,而root的初始密碼,ubuntu系統沒設定之前都是隨機的,所以要先設定一下密碼,輸入命令sudo passwd,如下圖所示:
再次輸入命令su root,便切換到root使用者了:
(2)、接下來給linyexiong這個使用者新增sudo許可權,依次輸入下面的命令:
第一,先給/etc/sudoers檔案賦予可寫的許可權:chmod u+w /etc/sudoers
第二,接著編寫/etc/sudoers檔案:vi /etc/sudoers
第三,在root ALL=(ALL:ALL) ALL下面新增XXX ALL=(ALL) ALL語句,如下圖所示:
第四、恢復/etc/sudoers原來只讀的許可權:chmod u-w /etc/sudoers,如下圖所示:
(3)、前期準備,更新相關的包還有安裝相關的工具包(vim,git, curl,wget),為後面搭建fabric環境做準備:
第一,首先要設定一下阿里雲的映象資源地址,提高下載速度,不然下面安裝包的時候會特別慢,參考文章:http://www.cnblogs.com/chougoushi/p/13524416.html
備份一下之前的apt的資源配置檔案,命令如下:
cp /etc/apt/sources.list /etc/apt/sources.list.bak
接著輸入命令:
vi /etc/apt/sources.list
將檔案底下未註釋的每一行,包含了網址的,都改為http://mirrors.aliyun.com/ubuntu/,如下圖所示:
修改後儲存即可。
第二,關掉之前的終端視窗,重新開啟終端視窗,即切換到linyexiong這個使用者底下,不要用root使用者,或者直接用命令su linyexiong,切換到linyexiong使用者,如下圖所示:
第三,輸入命令:sudo apt-get update,如下圖所示,此時去下載的地址就為上面第一步配置的阿里雲映象地址了:
第四,安裝vim,輸入命令:sudo apt-get install vim
第五,安裝git, 輸入命令:sudo apt-get install git
第六,安裝curl,輸入命令:sudo apt-get install curl
第七,安裝wget,輸入命令:sudo apt-get install wget
第八,安裝libtool libltdl-dev,輸入命令:sudo apt install libtool libltdl-dev 注:後面make編譯fabric用到
第九,安裝jq,輸入命令:sudo apt-get install jq 注:後面fabric測試網路用到
其中補充兩點:
1.wget:下載檔案的工具,用在命令列下。經常要下載一些軟體或從遠端伺服器恢復備份到本地伺服器。
2.curl:利用URL語法在命令列下工作的檔案傳輸工具。支援檔案上傳和檔案下載。
三、環境準備 - Go語言環境安裝
1、首先,輸入命令:cd ~,再輸入命令:cd Downloads,進入Downloads目錄,如下圖所示:
2、輸入命令:
wget http://golang.google.cn/dl/go1.15.6.linux-amd64.tar.gz
3、解壓此壓縮包:
tar -xzf go1.15.6.linux-amd64.tar.gz
4、移動壓縮後的資料夾到/usr/local底下去:
sudo mv go /usr/local
5、配置環境變數:
(1)、輸入命令:
vim ~/.bashrc
(2)、在後面加入:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
(3)、使檔案生效:
source ~/.bashrc
6、配置使用者環境變數:
(1)、輸入命令:
vim ~/.profile
(2)、在後面加入:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$HOME/go/bin
(3)、使檔案生效:
source ~/.profile
7、檢查go是否環境安裝成功:
四、環境準備 - docker安裝
1、輸入命令:sudo apt install docker
2、輸入命令:sudo apt install docker-compose
3、輸入命令:sudo service docker start
4、檢視docker版本,啟動是否正常,輸入命令:sudo docker version ,如下圖所示:
5、將當前使用者加入docker組:
(1)、輸入命令:sudo groupadd docker,這一步應該安裝docker之後就自動添加了,可忽略
(2)、輸入命令:sudo usermod -aG docker linyexiong ,注:linyexiong是當前使用者名稱,可改為你設定的使用者名稱
(3)、輸入命令:newgrp docker,更新使用者組
6、新增配置阿里雲映象,並重啟docker:
(1)、輸入命令:cd /etc/docker,進入/etc/docker目錄:
(2)、輸入命令:sudo vim daemon.json,並輸入下面的內容,新增阿里雲映象:
{
"registry-mirrors": ["http://aeckruos.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.6.129:5000"]
}
(3)、使配置的阿里雲映象生效:
分別輸入以下命令:
sudo systemctl daemon-reload
sudo systemctl restart docker
docker version
7、因為docker.sock在此使用者下沒許可權,所以輸入命令:sudo chmod -R 777 /var/run/docker.sock,執行後再輸入命令檢視docker版本:
8、檢視docker-compose版本,輸入命令:docker-compose version
五、環境準備 - 下載fabric原始碼,編譯fabric
1、下載fabric原始碼,執行下列命令:
mkdir -p $GOPATH/src/github.com/hyperledger
cd $GOPATH/src/github.com/hyperledger
2、git相關配置,不然下原始碼太慢了:
參考文章:http://www.jianshu.com/p/2c18c13fbef3
(1)、開啟網站http://www.ipaddress.com
(2)、找到 http://github.com 和 http://global-ssl.fastly.net 對應的IP地址,例如:
http://github.com/ 對應的ip是:192.30.255.112
http://global-ssl.fastly.net 對應的ip是:151.101.0.249
(3)、輸入命令:sudo vim /etc/hosts,在最後一行新增對應的域名配置資訊如下:
192.30.255.112 github.com
151.101.0.249 github.global.ssl.fastly.net
(4)、重啟網路服務,這步我暫時沒找到重啟網路的方式,就直接跳過了。
3、開始下載:
git clone http://github.com/hyperledger/fabric
4、檢視fabric所有版本,並切換fabric版本:
(1)、首先,進入fabric目錄,輸入命令:cd fabric
(2)、輸入命令:git tag,fabric各個版本如下圖所示:
(3)、切換fabric版本,這裡用穩定版本2.2.1,也可以不切換,預設就為最新版,輸入命令:git checkout v2.2.1
5、編譯fabric:
(1)、這裡注意進入的目錄,輸入以下命令:
cd ~/go/src/github.com/hyperledger/fabric
make release
執行後如下圖所示:
(2)、發現還未安裝make和make-guile包,輸入以下的命令:
sudo apt install make
sudo apt install make-guile
(3)、再重新執行make release命令,看是否有報錯,執行後如下圖所示:
(4)、在fabric目錄底下存在了fabric節點所存在的一些可執行檔案,如下圖所示:
(5)、其中discover是服務發現命令,只需要檢查另外六個是否安裝好,輸入以下命令:
./release/linux-amd64/bin/peer version
./release/linux-amd64/bin/orderer version
./release/linux-amd64/bin/configtxgen -version
./release/linux-amd64/bin/configtxlator version
./release/linux-amd64/bin/cryptogen version
./release/linux-amd64/bin/idemixgen version
能正常顯示版本號等相關資訊即可,如下圖所示,為了文章篇幅,這裡只顯示一張圖了,應該沒啥問題:
(6)、安裝可執行檔案:
sudo cp $GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin/* /usr/local/bin
sudo chmod -R 775 /usr/local/bin/configtxgen
sudo chmod -R 775 /usr/local/bin/configtxlator
sudo chmod -R 775 /usr/local/bin/cryptogen
sudo chmod -R 775 /usr/local/bin/peer
sudo chmod -R 775 /usr/local/bin/orderer
sudo chmod -R 775 /usr/local/bin/idemixgen
sudo chmod -R 775 /usr/local/bin/discover
6、Fabric docker映象下載:
(1)、輸入命令,進入到scripts目錄底下:
cd $GOPATH/src/github.com/hyperledger/fabric/scripts
如下圖所示:
(2)、執行底下的bootstrap.sh指令碼檔案,這個速度下載有點感人,有可能還會下載不成功的,不過多執行幾遍應該可以,又或者要改下映象資原始檔,命令如下:
./bootstrap.sh
執行完成後,會展示下載的docker映象列表:
也可以通過下面命令檢視:
docker images
7、Fabric-ca解決Fabric賬號生成問題。由Fabric-ca-server和Fabirc-ca-client兩個模組組成。
(1)、首先,回到hyperledger那個目錄底下,下載fabric-ca原始碼,命令如下:
cd $GOPATH/src/github.com/hyperledger
git clone http://github.com/hyperledger/fabric-ca
(2)、編譯下載的原始碼,依次輸入以下命令:
cd $GOPATH/src/github.com/hyperledger/fabric-ca
make fabric-ca-server
make fabric-ca-client
如下圖所示:
(3)、安裝編譯好的可執行檔案,輸入以下命令:
cd $GOPATH/src/github.com/hyperledger/fabric-ca/bin
sudo cp * /usr/local/bin/
chmod -R 755 /usr/local/bin/fabric-ca-server
chmod -R 755 /usr/local/bin/fabric-ca-client
如下圖所示:
(4)、檢查是否可執行:
fabric-ca-server version
fabric-ca-client version
顯示版本,如下圖所示:
8、開發客戶端安裝golang-sdk,fabric-sdk-go是提供的Go語言開發包,應用程式可以利用fabric-sdk-go與fabric網路進行互動並訪問鏈碼:
回到hyperledger那個目錄底下,下載fabric-sdk-go原始碼,命令如下:
cd $GOPATH/src/github.com/hyperledger
git clone http://github.com/hyperledger/fabric-sdk-go
如下圖所示:
9、啟動測試網路:
(1)、首先,進入fabric ->> scripts ->> fabric-samples 的test-network目錄,命令如下:
cd $GOPATH/src/github.com/hyperledger/fabric/scripts/fabric-samples/test-network
(2)、開始啟動測試網路:
./network.sh up
(3)執行後如下圖所示,沒出現錯誤,說明fabric環境已經搭建好了:
以上內容僅供學習參考,如有問題,請在評論下方指出,謝謝!
- 疫情催化下的全球遠端工作調查報告
- 給產品經理的9千字總結:系統間資料傳輸關注這些就夠了:介面、otter、log4j、SFTP、MQ……
- 安全新手入坑——如何在虛擬機器中安裝作業系統 VMware Tools(T)的安裝
- 王者連跪是什麼感覺?
- 抓取了1400家科技公司的招聘資訊,我發現數據工程師比資料科學家更有市場 - 知乎
- 21中國礦業大學北京\礦大北京計算機考研複試經驗
- Hyperledger Fabric學習筆記(二)- Fabric 2.2.1環境搭建
- 以向量運算為例,總結運算子過載
- svn認證失敗,解決方案
- Cryptographie
- 跟我學Android之七 資原始檔
- 當檔案記憶體使用量並列印檔案超過100k自動結束程式
- R語言 lightgbm 演算法優化:不平衡二分類問題(附程式碼)
- 2021年軟體開發的七大趨勢
- 實現微服務會帶來哪些挑戰?
- 【重點】初窺Linux 之 我最常用的20多條命令
- 如何使用這個 KDE Plasma 文字編輯器?
- SCRIPT7002: XMLHttpRequest: 網路錯誤 0x2ef3的解決方法
- 程式設計師漫畫:終極廣告攔截器
- 猜數字遊戲,遊戲介面