美文网首页
Hyperledger Fabric 2.x环境搭建

Hyperledger Fabric 2.x环境搭建

作者: smilesimple | 来源:发表于2021-02-26 21:32 被阅读0次

    写在前面

    本次安装的操作环境是Ubuntu16.04。

    一、基本工具安装

    本部分安装curl和golang。curl在安装docker时会用到。golang语言在Fabric中会用到。

    1、安装curl

    sudo apt-get -y install curl
    

    2、安装golang

    本次安装的版本是:go1.16.linux-amd64.tar.gz

    1)下载golang安装包。官方网站:
    https://studygolang.com/dl
    下载完成后解压,移到/usr/local下:

    tar -zxvf go1.16.linux-amd64.tar.gz
    sudo mv go /usr/local/
    

    2)配置环境变量:

    sudo vim ~/.profile
    

    添加如下内容:

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

    保存文件,并且重新加载新的环境变量。

    source ~/.profile
    

    3)查看go版本:

    go version
    

    说明:
    本部分安装步骤参考文献如下:
    https://www.cnblogs.com/bubbleboom/p/14073153.html

    二、docker相关安装

    3、安装docker

    1)安装依赖包:

    sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
    

    2)添加GPG密钥:

    curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
    

    3)添加软件源:

    sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
    

    4)更新并安装Docker-CE

    sudo apt-get update
    sudo apt-get install docker-ce
    

    说明:
    1、docker安装主要参考自
    https://www.cnblogs.com/bubbleboom/p/14073153.html
    2、docker官方网站
    https://docs.docker.com/engine/install/ubuntu/

    4、安装docker-compose

    1)用curl将Compose文件下载到/usr/local/bin目录中:

    sudo curl -L https://github.com/docker/compose/releases/download/1.25.0-rc1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
    

    2)下载完成后,将文件更改为可执行权限:

    sudo chmod +x /usr/local/bin/docker-compose
    

    3)验证是否安装成功,查看docker-compose版本信息

    docker-compose -v
    

    说明:
    1、安装主要参考自
    https://www.cnblogs.com/bubbleboom/p/14073153.html

    5、使普通用户对docker具有操作权限

    docker安装好之后,仅root用户才可以运行docker命令。具体表现为需要在命令前使用sudo。而在Fabric中,使用sudo会带来环境变量的问题。解决这种冲突的方法是使普通用户可以运行docker命令。

    具体操作:
    0、确定docker处于运行状态

    sudo systemctl start docker
    

    1、创建docker用户组

    sudo groupadd docker
    

    2、将用户添加到用户组

    sudo gpasswd -a ${USER} docker
    

    3、重启docker使以上操作生效

    sudo service docker restart
    

    4、如果普通用户执行docker命令,如果提示get …… dial unix /var/run/docker.sock权限不够,则修改/var/run/docker.sock权限。使用root用户执行如下命令,即可

    sudo chmod a+rw /var/run/docker.sock
    

    说明:

    1、以上操作步骤参考自:
    https://www.firegod.cn/2020/05/docker-%E7%BB%84%E6%B7%BB%E5%8A%A0%E7%94%A8%E6%88%B7%EF%BC%8C%E8%AE%BE%E7%BD%AE%E5%85%81%E8%AE%B8%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%E6%93%8D%E4%BD%9C-docker/

    2、只有root用户才可以运行docker命令的原因:
    https://docs.docker.com/engine/install/linux-postinstall/

    3、使用sudo带来的环境变量问题。在使用Fabric测试网络过程中,“Interacting with the network”步骤会报错。

    2.3.1版本报错如下:

    ERRO 001 Fatal error when initializing core config : error when reading core config file: Config File "core" Not Found in "[/home/wqp/HyperledgerFabric2.x/fabric/scripts/fabric-samples/test-network]"
    

    2.2版本报错如下:

    ERRO 001 Fatal error when initializing core config : Could not find config file. Please make sure that FABRIC_CFG_PATH is set to a path which contains core.yaml
    

    4、添加用户至用户组,还可以使用如下命令

    sudo usermod -aG docker $USER
    

    5、groupadd、gpasswd和usermod均是Linux命令。
    https://www.runoob.com/linux/linux-comm-groupadd.html
    https://www.runoob.com/linux/linux-comm-gpasswd.html
    https://blog.csdn.net/lixgjob/article/details/81162528

    6、docker官网提供的操作方法:
    https://docs.docker.com/engine/install/linux-postinstall/

    7、fabric官网的说明:
    https://hyperledger-fabric.readthedocs.io/en/release-2.2/prereqs.html#docker-and-docker-compose

    三、Fabric相关

    6、下载Fabric源码

    1)首先创建文件夹

    mkdir HyperledgerFabric2.x
    

    2)进入刚刚创建的文件夹

    cd HyperledgerFabric2.x
    

    3)GitHub上下载Fabric源码

    git clone https://github.com/hyperledger/fabric
    

    如果下载太慢,可以使用Gitee上的镜像仓库

    git clone https://gitee.com/mirrors/fabric.git
    

    说明:
    (1)源码下载过程,使用普通用户身份即可,无需使用管理员身份(sudo)。这样也可以防止后续出现sudo与环境变量的冲突问题。
    (2)本次安装使用的是gitee进行下载。
    (3)Fabric源码也可以自己访问GitHub网站,手动下载。下载时可以选择版本。
    下载网址:https://github.com/hyperledger/fabric
    网站打开过程有点慢,需耐心等待。打开后,界面如下:


    点击左侧maser处,可以选择代码版本:

    版本选择好之后,点击右侧code,选择Download ZIP,即可完成下载。

    7、下载Fabric-samples

    Fabric samples是Fabric官方为了学习和测试而提供的一个示例网络。通过Fabric samples,再结合官网教程,可以快速对Fabric进行学习。
    具体下载操作如下:
    进入fabric源码的scripts目录,在该目录下启动脚本:bootstrap.sh。

    cd fabric/scripts
    ./bootstrap.sh # 该命令会下载官方提供的示例代码和镜像文件,然后进入漫长的等待。
    

    说明:
    (1)下载过程可能因为网络问题而停止。解决方法是更换软件源,本次成功下载所使用的软件源是:http://mirrors.tuna.tsinghua.edu.cn/ubuntu
    (2)bootstrap.sh脚本解析。
    该脚本文件完成三件事:1、下载fabric-samples repo;2、下载platform-specific binaries;3、下载docker image。
    实际上,fabric-samples repo、platform-specific binaries可以通过手动下载,下载完成后解压的相应位置。下载网址和所需版本信息均可以从bootstrap.sh文件中获得。
    下载完成后,fabric-samples repo的存在形式是fabric-samples文件夹;platform-specific binaries的存在形式是bin文件夹和config文件夹;要将bin文件夹和config文件夹放在fabric-samples文件夹,fabric-samples文件夹放在与bootstrap.sh相同的目录下。
    手动下载完成后,可以使用如下命令跳过前两步的下载:

    ./bootstrap.sh -sb
    

    命令中参数含义可以从bootstrap.sh的帮助信息中获得。查看帮助信息:

    ./bootstrap.sh -h
    

    帮助信息如下:

    Usage: bootstrap.sh [version [ca_version]] [options]
    
    options:
    -h : this help
    -d : bypass docker image download
    -s : bypass fabric-samples repo clone
    -b : bypass download of platform-specific binaries
    
    e.g. bootstrap.sh 2.2.2 1.4.9 -s
    will download docker images and binaries for Fabric v2.2.2 and Fabric CA v1.4.9
    

    (3)本部分参考文献:
    https://blog.csdn.net/qq_43681877/article/details/110896678
    (4)Fabric官方关于本部分的描述:
    https://hyperledger-fabric.readthedocs.io/en/release-2.3/install.html

    致谢

    感谢所有参考文献的作者!

    相关文章

      网友评论

          本文标题:Hyperledger Fabric 2.x环境搭建

          本文链接:https://www.haomeiwen.com/subject/nwevfltx.html