• Hyperledger Fabric 2.3.2环境搭建

    • 2021-09-16 12:00
    • 字数 4,136
    • 阅读 130

    1. 准备阶段

    本次操作系统使用CentOS-7-x86_64-Minimal-2009.iso镜像。在我们开始之前,如果您还没有这样做,您可能希望检查以下所有先决条件是否已安装在您将开发区块链应用程序或运行Hyperledger Fabric的平台上。

    1.1. 安装Git

    如果还没安装,下载最新版本的git,或者你运行curl命令有问题。

    CentOS 7可通过如下命令安装git:

    sudo yum install -y git
    

    如果出现如下提示:fabric不在sudoers文件中。此事将被报告。

    解决办法:在/etc/sudoers中添加对应的用户即可。

    1.2. 安装cURL

    如果尚未安装 cURl 或在服务器上运行 curl 命令出错时请下载最新版本的 cURL 工具:https://curl.se/download.html

    你也可以通过yum安装cURL。

    sudo yum install curl
    

    1.3. 安装go

    如果尚未安装 cURl 或在服务器上运行 curl 命令出错时请下载最新版本的 cURL 工具:https://curl.se/download.html

    你也可以通过yum安装cURL。

    
    curl -O https://dl.google.com/go/go1.17.1.linux-amd64.tar.gz
    sudo tar -C /usr/local -zxvf go1.17.1.linux-amd64.tar.gz
    
    

    通过命令sudo vim /etc/profile编辑环境变量:

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

    执行source /etc/profile,使用环境变量生效。

    设置国内代理:

    
    go env -w GO111MODULE=on
    go env -w GOPROXY=https://goproxy.cn,direct
    
    

    1.4. Docker下载

    1.4.1. 安装Docker

    Docker 的 安装资源文件 存放在Amazon S3,会间歇性连接失败。所以安装Docker的时候,会比较慢。

    你可以通过执行下面的命令,高速安装Docker。

    curl -sSL https://get.daocloud.io/docker | sh
    

    适用于Ubuntu,Debian,Centos等大部分Linux,会3小时同步一次Docker官方资源。

    1.4.2. 卸载Docker

    
    sudo yum remove docker \
    docker-common \
    container-selinux \
    docker-selinux \
    docker-engine
    
    

    卸载Docker后,/var/lib/docker/目录下会保留原Docker的镜像,网络,存储卷等文件. 如果需要全新安装Docker,需要删除/var/lib/docker/目录

    rm -fr /var/lib/docker/
    

    1.4.3. 安装 Docker Compose

    Docker Compose 存放在Git Hub,不太稳定。

    你可以也通过执行下面的命令,高速安装Docker Compose。

    
    curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    chmod +x /usr/local/bin/docker-compose
    sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
    
    

    你可以通过修改URL中的版本,可以自定义您的需要的版本。

    1.5. 安装node

    你可以通过修改URL中的版本,可以自定义您的需要的版本。

    
    curl -O https://nodejs.org/dist/v14.17.6/node-v14.17.6-linux-x64.tar.xz
    sudo tar -C /usr/local -xvf node-v14.17.6-linux-x64.tar.xz
    sudo ln -s /usr/local/node-v14.17.6-linux-x64/bin/node /usr/local/bin/node
    sudo ln -s /usr/local/node-v14.17.6-linux-x64/bin/npm /usr/local/bin/npm
    
    

    1.6. 网络加速

    1.6.1. Github加速

    GitHub 我们都知道是世界上最大的开源及私有软件项目的托管平台,全世界每天有海量优秀的开源软件在这里产生,而 GitHub 在国内很多时候获取到的下载链接是亚马逊的服务器。

    中国因为不可言说的原因,经常抽疯或龟速。想要加快 GitHub 下载速度就需要用到 GitHub 国内加速服务,对于有条件的可以使用代理加快访问速度,而没有条件的就可以用到网上热心人士维护的加速服务了。

    第一步:获取github的global.ssl.fastly地址

    访问:http://github.global.ssl.fastly.net.ipaddress.com/#ipinfo 获取cdn和ip域名:


    得到:199.232.69.194 github.global.ssl.fastly.net

    第二步:获取github.com地址

    访问:https://github.com.ipaddress.com/#ipinfo 获取cdn和ip:

     

    得到:140.82.114.4 github.com

    第三步:获取assets-cdn.github.com地址

    访问:https://github.com.ipaddress.com/assets-cdn.github.com#ipinfo 

    获取cdn和ip:

     

    通过ping挑选响应最快的ip,得到:

    185.199.108.153 assets-cdn.github.com

    通过sudo vim /etc/hosts,修改hosts添加如下内容:

    
    140.82.114.3 github.com
    185.199.108.153 assets-cdn.github.com
    199.232.69.194 github.global.ssl.fastly.net
    
    

    使用hosts生效:

    
    sudo service network restart
    # 或者
    sudo /etc/init.d/network restart
    
    

    1.6.2. 设置docker镜像

    
    sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' -e 's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsinghua.edu.cn|g' -i.bak /etc/yum.repos.d/CentOS-*.repo
    sudo yum makecache
    sudo /etc/init.d/network restart
    
    

    1.6.3. 设置npm国内源。

    npm config set registry https://registry.npm.taobao.org
    

    2. 安装示例、二进制和 Docker 镜像

    本文官方链接:

    https://hyperledger-fabric.readthedocs.io/zh_CN/release-2.2/install.html

    切换到用户根目录下,执行如下命令:

    curl -sSL https://bit.ly/2ysbOFE | bash -s

    上面的命令下载并执行一个 bash 脚本,该脚本将下载并提取设置网络所需的所有特定于平台的二进制文件,并将它们放入您在上面创建的克隆仓库中。它检索以下特定平台的二进制文件:

     

    并将它们放在当前工作目录的子目录 bin 中。

    最后,该脚本会将从 Docker Hub 上下载 Hyperledger Fabric docker 镜像到本地 Docker 注册表中,并将其标记为 ‘latest’。

    该脚本列出了结束时安装的 Docker 镜像。

     

    注:如果下载中断或速度过慢,可尝试取消重新执行命令。

    3. 使用Fabric的测试网络

    下载Hyperledger Fabric Docker镜像和示例后,您将可以使用以fabric-samples代码库中提供的脚本来部署测试网络。 您可以通过在本地计算机上运行节点来使用测试网络以了解Fabric。更有经验的开发人员可以使用 网络测试其智能合约和应用程序。该网络工具仅用作教育与测试目的。它不应该用作部署产品网络的模板。 该测试网络在Fabric v2.0中被引入作为first-network示例的长期替代。该示例网络使用Docker Compose部署了一个Fabric网络。 因为这些节点是隔离在Docker Compose网络中的,所以测试网络不配置为连接到其他正在运行的fabric节点。

    注意: 这些指导已基于最新的稳定版Docker镜像和提供的tar文件中的预编译的安装软件进行验证。 如果您使用当前的master分支的镜像或工具运行这些命令,则可能会遇到错误。

    3.1. 开始之前

    在运行测试网络之前,您需要克隆fabric-samples代码库并下载Fabric镜像。确保已安装 的 准备阶段 和 安装示例、二进制和 Docker 镜像。

    4. 参考资料

    l Hyperledger-fabric2.3.0环境搭建:https://blog.csdn.net/qq_42714109/article/details/110877880

    l Hyperledger Fabric 2.x环境搭建:https://www.jianshu.com/p/e91174f19c03

back_to_top