Fabric節點通過docker容器來運行,啓動fabric網絡中的節點需要安裝docker、docker-compose、go語言環境。
Docker在服務器上運行,內核版本不能低於3.10
宿主機:win10
VMware-workstation-full-14.1.3-9474260
虛擬機:CentOS-7-x86_64-Everything-1810
注:有些目錄不存在,需要自行創建
1 安裝docker
a 設置倉庫(yum-utils提供yum-config-manager工具,設備映射存儲驅動需要device-mapper-persistent-data和lvm2工具,是設備/存儲驅動所需的基礎應用)
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
b 設置穩定儲存庫:
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
c 啓動edge和測試存儲庫(可選)
yum-config-manager --enable docker-ce-edge
yum-config-manager --enable docker-ce-test
d 安裝docker ce
在線安裝:
yum install docker-ce
安裝指定版本:
yum installdocker-ce-<version string>
離線安裝:
mkdir -p /tmp/docker/docker
yum install docker-ce-17.06.0.ce-1.el7.centos.x86_64.rpm
查詢docker版本號:
docker -v
2 安裝docker-compose
a 在線安裝 //安裝docker-compose需要服務器支持curl命令
yum install curl
curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
b 離線安裝:
下載docker-compose,上傳到/tmp/docker/docker-compose
將docker-compose移動到/usr/local/bin/目錄下:
cd /tmp/docker/docker-compose
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
c 賦予可執行權限
chmod +x /usr/local/bin/docker-compose
查看docker-compose版本
docker-compose -version
3 安裝go語言環境
在線安裝:
cd /opt
mkdir golang
cd golang
yum install wget
wget https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz
tar -zxvf go1.10.3.linux-amd64.tar.gz
配置環境變量:
vi /etc/profile
添加如下內容到/etc/profile後面
export GOPATH=/opt/gopath
export GOROOT=/opt/golang/go
export PATH=$GOROOT/bin:$PATH
source /etc/profile
查看go版本
go version
4 fabric安裝配置
離線安裝:
網址:https://github.com/hyperledger/fabric/
拷貝到 /tmp/docker-images/目錄下
然後執行:
docker鏡像導入
docker load < /tmp/docker-images/fabric-tools-1.4.1.tar
docker load < /tmp/docker-images/fabric-ccenv-1.4.1.tar
docker load < /tmp/docker-images/fabric-orderer-1.4.1.tar
docker load < /tmp/docker-images/fabric-peer-1.4.1.tar
docker load < /tmp/docker-images/fabric-ca-1.4.1.tar
docker load < /tmp/docker-images/fabric-zookeeper-0.4.15.tar
docker load < /tmp/docker-images/fabric-kafka-0.4.15.tar
docker load < /tmp/docker-images/fabric-couchdb-0.4.15.tar
docker load < /tmp/docker-images/fabric-baseos-0.4.15.ta
給docker鏡像做標籤
docker tag 432c24764fbb docker.io/hyperledger/fabric-tools:latest
docker tag d7433c4b2a1c docker.io/hyperledger/fabric-ccenv:latest
docker tag ec4ca236d3d4 docker.io/hyperledger/fabric-orderer:latest
docker tag a1e3874f338b docker.io/hyperledger/fabric-peer:latest
docker tag 3a1799cda5d7 docker.io/hyperledger/fabric-ca:latest
docker tag 20c6045930c8 docker.io/hyperledger/fabric-zookeeper:latest
docker tag b4ab82bbaf2f docker.io/hyperledger/fabric-kafka:latest
docker tag 8de128a55539 docker.io/hyperledger/fabric-couchdb:latest
docker tag 9d6ec11c60ff docker.io/hyperledger/fabric-baseos:latest
----------------------------------------運行e2e實例-------------------------------------------
將hyperledger-fabric-linux-amd64-1.4.1.tar.gz下載並解壓到
$GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin
並給linux-amd64目錄賦予執行權限( 不賦權限可能會報錯)
chmod -R 777 linux-amd64/
由於Fabric 1.4開始刪除了End-2-End案例,需要手動拷貝e2e_cli目錄到$GOPATH/src/github.com/hyperledger/fabric/examples目錄下
將e2e_cli目錄修改爲可執行文件
chmod -R 777 $GOPATH/src/github.com/hyperledger/fabric/examples/e2e_cli
運行e2e實例
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -q)
cd $GOPATH/src/github.com/hyperledger/fabric/examples/e2e_cli
./network_setup.sh up