Fabric环境搭建(一)——Ubuntu20.04系统下Fabric1.4.0环境搭建

一、虚拟机安装

1、安装操作系统为Ubuntu20.04的虚拟机,使用虚拟机进行fabric环境搭建与安装

2、为虚拟机配置国内源,以配置清华源为例

  1. 进入清华大学源 (https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/)
  2. 选择20.04版本的源码
  3. 打开虚拟机终端,进入到配置目录
$ cd /etc/apt

     4. 编辑源

$ sudo cp sources.list sources_backup.list       #备份源,复制sources.list文件并命名为sources_back.list
$ sudo gedit sources.list      #在打开的文件里用新复制的源替换原有的(把原有的删掉,粘贴新复制的)

5. 更新源

sudo apt update

二、Fabric环境搭建

1. 安装git

安装git工具使用如下命令:

$ sudo apt update
$ sudo apt install git

2. 安装cURL

使用如下命令安装cURL:       

$ sudo apt install curl

 3. 安装Docker

查看系统中是否已经安装Docker:

$ docker --version

 使用如下命令安装Docker的最新版本:

$ sudo apt update
$ sudo apt install docker.io

 查看Docker版本信息:

$ docker --version

 4. 安装Docker-compose

确定系统中是否已安装docker-compose工具:

$ docker-compose --version

 如系统提示未安装,则使用如下命令安装docker-compose工具:

$ sudo apt install docker-compose

 安装成功后,查看Docker-Compose版本信息:

$ docker-compose --version

 输出: docker-compose version 1.25.0, build unknown

5. 安装Golang

安装WGET命令:

yum install wget

 使用wget工具下载Golang的最新版本压缩包文件 go1.14.4.linux-amd64.tar.gz

$ wget https://dl.google.com/go/go1.14.4.linux-amd64.tar.gz

下载完成后,文件会保存在当前目录下。可以使用 ll 命令查看

使用 tar 命令将下载后的压缩包文件解压到指定的 /usr/local/ 路径下

$ sudo tar -zxvf go1.14.4.linux-amd64.tar.gz -C /usr/local/

配置环境变量:解压后,Golang可以让系统的所有用户正常使用, 所以我们使用 vim 文件编辑工具打开系统的 profile 文件进行编辑:

$ sudo vim /etc/profile

 在profile文件最后添加如下内容:

export GOPATH=$HOME/go
export GOROOT=/usr/local/go
export PATH=$GOROOT/bin:$PATH

 使用 source 命令,使刚刚添加的配置信息生效:

$ source /etc/profile

 通过 go version命令验证是否成功:

$ go version

 6. 安装make

$ sudo apt install make

 7. 安装g++

$ sudo apt install g++

 8. 安装libltdl-dev 库

$ sudo apt-get install libltdl-dev

 三、以源码方式编译安装fabric1.4.0

1. 下载fabric组件版本 1.4.0

$ mkdir -p $GOPATH/src/github.com/hyperledger/
$ cd $GOPATH/src/github.com/hyperledger/
#从码云上克隆,基于1.4.0 来操作(注意:下面给的克隆地址可能会失效,如果失效,可以换为码云上的其他地址或者GitHub上的地址:https://github.com/hyperledger/fabric-samples.git)
$ git clone -b v1.4.0 https://gitee.com/Hospital-Ledger/fabric-samples.git

注意:如果无法访问github网站,则应在在(/etc/)中的hosts文件修改github.com的动态ip

Fabric环境搭建(一)——Ubuntu20.04系统下Fabric1.4.0环境搭建_第1张图片 

 2. 下载fabric 1.4.0源码

$ cd $GOPATH/src/github.com/hyperledger/

#使用-b v1.4.0指定克隆版本,用国内镜像网站,可加快下载速度(注意:码云上的地址可能会失效,如果不能克隆,可以换为码云上的其他地址或者直接从GitHub上克隆:https://github.com/hyperledger/fabric.git)
$ git clone -b v1.4.0 https://gitee.com/mirrors/hyperledger-fabric.git

#把hyperledger-fabric改为fabric
$ sudo mv hyperledger-fabric fabric

 3. 编译fabric 1.4.0

编译

$ cd fabric
$ make release

 查看是否编译成功

$ ll release/linux-amd64/bin/

 应该可以查看到以下8个文件

configtxgen
configtxlator
cryptogen
discover
get-docker-images.sh
idemixgen
orderer
peer

 4.下载fabric-ca 1.4.0源码

$ cd $GOPATH/src/github.com/hyperledger
#使用-b v1.4.0指定克隆版本,用国内镜像网站,可加快下载速度(注意:码云上的地址可能会失效,如果不能克隆,可以换为码云上的其他地址或者直接从GitHub上克隆:https://github.com/hyperledger/fabric-ca.git)
$ git clone -b v1.4.0 https://gitee.com/zhangsen999/fabric-ca.git

 5. 编译fabric-ca源码

$ cd fabric-ca
$ make fabric-ca-server
$ make fabric-ca-client

 6. 查看是否编译成功

$ ll bin/

应该可以看到以下2个文件:

fabric-ca-client

fabric-ca-server

7. 复制编译所得文件(否则网络不能启动)

#在fabric-samples目录创建bin目录
$ cd $GOPATH/src/github.com/hyperledger/fabric-samples/
$ mkdir bin
#复制编译fabric所得文件
$ cp $GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin/* $GOPATH/src/github.com/hyperledger/fabric-samples/bin/
#复制编译fabric-ca所得文件
$ cp $GOPATH/src/github.com/hyperledger/fabric-ca/bin/* $GOPATH/src/github.com/hyperledger/fabric-samples/bin/
#查看复制结果
$ ll bin/

 8.拉取 docker 镜像

  1. 登录阿里云容器服务:https://account.aliyun.com/login/login.htm?oauth_callback=https%3A%2F%2Fcr.console.aliyun.com%2Fcn-hangzhou%2Finstances%2Fmirrors
  2. 找到“镜像加速器”项
  3. 复制代码到终端执行即可

 Fabric环境搭建(一)——Ubuntu20.04系统下Fabric1.4.0环境搭建_第2张图片

       4. 执行以下命令拉取镜像:

$ export FABRIC_TAG=1.4.0
$ export CA_TAG=1.4.0
$ export THIRDPARTY_IMAGE_VERSION=0.4.14

$ docker pull hyperledger/fabric-peer:$FABRIC_TAG \
&& docker pull hyperledger/fabric-orderer:$FABRIC_TAG \
&& docker pull hyperledger/fabric-ca:$CA_TAG \
&& docker pull hyperledger/fabric-tools:$FABRIC_TAG \
&& docker pull hyperledger/fabric-ccenv:$FABRIC_TAG \
&& docker pull hyperledger/fabric-baseimage:$THIRDPARTY_IMAGE_VERSION \
&& docker pull hyperledger/fabric-baseos:$THIRDPARTY_IMAGE_VERSION \
&& docker pull hyperledger/fabric-couchdb:$THIRDPARTY_IMAGE_VERSION \
&& docker pull hyperledger/fabric-kafka:$THIRDPARTY_IMAGE_VERSION \
&& docker pull hyperledger/fabric-zookeeper:$THIRDPARTY_IMAGE_VERSION

         5. 将已下载的镜像标记为最新

$ docker tag hyperledger/fabric-peer:$FABRIC_TAG hyperledger/fabric-peer \
&& docker tag hyperledger/fabric-orderer:$FABRIC_TAG hyperledger/fabric-orderer \
&& docker tag hyperledger/fabric-ca:$CA_TAG hyperledger/fabric-ca \
&& docker tag hyperledger/fabric-tools:$FABRIC_TAG hyperledger/fabric-tools \
&& docker tag hyperledger/fabric-ccenv:$FABRIC_TAG hyperledger/fabric-ccenv \
&& docker tag hyperledger/fabric-baseimage:$THIRDPARTY_IMAGE_VERSION hyperledger/fabric-baseimage \
&& docker tag hyperledger/fabric-baseos:$THIRDPARTY_IMAGE_VERSION hyperledger/fabric-baseos \
&& docker tag hyperledger/fabric-couchdb:$THIRDPARTY_IMAGE_VERSION hyperledger/fabric-couchdb \
&& docker tag hyperledger/fabric-kafka:$THIRDPARTY_IMAGE_VERSION hyperledger/fabric-kafka \
&& docker tag hyperledger/fabric-zookeeper:$THIRDPARTY_IMAGE_VERSION hyperledger/fabric-zookeeper

         6. 之后使用 docker images 命令查看相关的镜像信息:

$ docker images

 四、测试网络

1. 进入相应目录

$ cd ~/go/src/github.com/hyperledger/fabric-samples/first-network

2. 生成证书和密钥:

$ sudo ./byfn.sh -m generate

 命令成功执行后会生成1个orderer + 4个peer + 1个CLI的网络结构,4个peer包含在2个org中

3.启动网络:

$ sudo ./byfn.sh -m up

 出现以下内容,说明网络测试成功:

Fabric环境搭建(一)——Ubuntu20.04系统下Fabric1.4.0环境搭建_第3张图片

4.网络使用完毕后需关闭网络,以防止后期启动网络时出现错误:

$ sudo ./byfn.sh -m down

你可能感兴趣的:(c1)