基於官方fabric-samples快速搭建fabric2.0網絡。
資源準備
二進制工具
-
獲取fabric源碼
git clone https://github.com/hyperledger/fabric.git
-
切換至2.0.0分支
cd $GOPATH/src/github.com/hyperledger/fabric git checkout v2.0.0
-
編譯二進制工具(需要安裝其他工具)
在根目錄下執行make all-release,會生成一個release文件夾
make all-release
部署環境
基於vagrant創建centos7虛擬機
-
準備bootstrap.sh 腳本文件,用於初始化虛擬機環境。
#!/usr/bin/bash sudo su echo "nameserver 8.8.8.8" >> /etc/resolv.conf sleep 3s yum install -y epel-release yum install -y vim yum install -y golang yum remove docker docker-common docker-selinux docker-engine yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum makecache fast yum -y install docker-ce yum -y install docker-compose service docker start mkdir -p /etc/docker echo {\"registry-mirrors\": [\"https://8w1wqmsz.mirror.aliyuncs.com\"]} > /etc/docker/daemon.json service docker restart echo "export GOPROXY=https://goproxy.io" >> ~/.bashrc
-
Vagrantfile 虛擬機創建文件。
Vagrant.configure("2") do |config| config.vm.box = "centos/7" config.vm.provider "virtualbox" do |vb| vb.memory = "2048" vb.cpus = 4 end config.vm.provision "shell", path: "bootstrap.sh" end
部署資源
- 創建resource目錄,將fabric-samples項目拷貝到這。
- 創建resource/bin目錄,將之前編譯好linux版本的configtxlator、configtxgen、cryptogen拷貝到這。
完整結果目錄如下:
.
├── Vagrantfile
├── bootstrap.sh
└── resource
├── bin
└── fabric-samples
部署fabric網絡
-
啓動虛擬機
vagrant up
-
進入虛擬機並切換至 root用戶
vagrant ssh sudo su
-
進入到fabric-samples目錄
cd /vagrant/resource/fabric-samples
-
切換到v2.0.0版本
git checkout v2.0.0
-
拷貝二進制工具
cp ../bin/* first-network/
-
進入first-network目錄並修改鏡像版本號
cd first-network/ # 修改版本號爲2.0.0 vim byfn.sh
-
啓動fabric網絡
./byfn.sh up
-
稍等幾分鐘即可看到下圖標識,即fabric網絡啓動成功。