準備vmware虛擬機,並安裝完ubuntu系統後。繼續搭建fabric運行環境。。。java
右鍵-》open Terminal-》node
//默認root用戶是無固定密碼的,而且是被鎖定的,若是想給root設置一個密碼 sudo passwd root //輸入密碼 & 確認密碼 //切換root用戶 su root //輸入密碼便可--root //切換爲普通用戶 su username //eg:su yufeng
apt-get install git //安裝git
git version //查看版本號
//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
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
將go的壓縮文件下載到指定目錄下(-P /opt :下載到指定目錄/opt下)python
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
vi /etc/profile
在配置文件末尾增長內容:linux
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....異常git
退出編輯,輸入如下命令使修改生效:github
source /etc/profile
查看go環境是否安裝與配置成功docker
go version
若出現:go version go1.9.2 linux/amd64 則代表配置成功!shell
說明:bootstrap
關於GOPATH,這是go程序運行的目錄,也就是全部編寫的go程序都要放在這個目錄下。ubuntu
根據上述配置,咱們在~目錄先新建一個gopath文件夾,而後新建三個文件夾src,pkg,bin。
其中src存放源碼,pkg存放編譯生成的文件,bin存放生成的可執行文件。
mkdir -p $GOPATH/src/github.com/hyperledger
cd ~/gopath/src/github.com/hyperledger git clone -b release-1.0 https://github.com/hyperledger/fabric.git
上述下載完成以後,咱們能夠看到當前工做目錄下多了一個fabric的文件夾,這就是咱們下載好的文件,這裏面有咱們須要的例子。
至此,咱們的開發環境已經基本搭建完畢,下面將經過一個具體的例子下載fabric1.0.5的鏡像並體驗運行效果。
//切換工做路徑。進入scripts文件夾下 cd ./fabric/scripts/ //查看scripts文件夾內容 ls
當前路徑下面有許多的shell腳本文件。
//下載鏡像 ./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文件夾,這個文件夾中所包含的可執行文件正是咱們運行例子所須要的。
如今咱們須要把這個文件夾複製到咱們須要運行的例子的上層目錄中,輸入命令:
cp -rf bin/ ./../examples/
接下來咱們就能夠運行官方給出的例子:e2e_cli
cd ./../examples/e2e_cli/
./network_setup.sh up
正常運行結果:
關閉實例:
Ctrl+c
./network_setup.sh down
本文參考博客:
http://www.javashuo.com/article/p-spzagimv-nq.html
http://www.javashuo.com/article/p-rqpgobai-cp.html
本人操做過程當中遇到的問題及解決方法
1。安裝git問題
https://askubuntu.com/questions/15433/unable-to-lock-the-administration-directory-var-lib-dpkg-is-another-process
採用命令行處理
sudo rm /var/lib/apt/lists/lock sudo rm /var/cache/apt/archives/lock sudo rm /var/lib/dpkg/lock
2。docker安裝有問題。卸載docker
http://www.javashuo.com/article/p-hvzojzcv-hh.html
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