Hyperledger Fabric 安装

  前一篇已经准备好了运行环境,本篇将介绍Fabric的安装以及测试网络环境

  Fabric的安装

  HyperFabric安装大致可以分成两种,

    第一:使用自带在脚本安装,可以下载fabric-sample和二进制文件到操作系统,简化安装过程。

    第二:以源码在方式进行本地编译安装,此方式相对第一种比较复杂,需手动编译生存相应工具。

  本次将以第一种方式进行讲解,后续将以专门在篇幅介绍第二种方式进行安装。

  第一种安装方式步骤如下:

    1. 创建目录:单独创建目录,方便后续管理

      mkdir hyfa && cd hyfa

    2. 新建bootstrap.sh并添加内容

      vim bootstrap.sh

      将最新hyperledger-fabric项目中sripts下bootstrap.sh内容拷贝到该文件,或者直接下载文件进行覆盖均可。

      https://github.com/hyperledger/fabric/blob/master/scripts/bootstrap.sh

    3.修改权限

      chmod +x bootstrap.sh

    4.执行脚本文件

      sudo ./bootstrap.sh  1.4.0 (如果执行失败,可再次执行该命令,已下载的不会重新下载)

    5.添加环境变量

      export PATH=$HOME/hyfa/fabric-samples/bin:$PATH

    说明;执行bootstrap.sh是做了什么:

      1)如果当前目录没有hyperledger/fabric-samples则从github.com克隆hyperledger/fabric-samples存储库,并检出对应指定版本标签

      2)将指定版本在hyperledger fabric平台特定二进制文件和配置文件安装带fabric-samples存储库的根目录中

      3)下载指定版本在hyperledger fabric docker镜像,并标记为latest

   测试Hyperledger Fabric网络环境

    本次使用自动化脚本byfn.sh进行测试,byfn.sh自动化脚本文件为各种hyperledger fabric网络实体生存所有在证书肯密钥,并且可以实现引导服务启动及配置通道所需在一系列配置文件,具体操作步骤如下:

    cd   $home/hyfa/fabric-samples/first-network  

    sudo  ./byfn.sh -m generate (生成1个order+4个peer+1个CLI网络结构, 4个Peer包含在2个org中)

    sudo   ./byfn.sh -m up  (启动网络)

    sudo   ./byfn.sh -m down  (关闭网络,将关闭容器,且删除加密文件,从东docker registry中删除链码图像)

    在网络不使用时,请无比关闭网络,防止后期启动网络时引起冲突在错误

    启动成功后信息提示如下:

    

 

 

 

 

安装问题总结:

  在启动时遇到了一个错误,提示:

    

Error: error getting endorser client for channel: endorser client failed to connect to peer0.org1.example.com:7051: failed to create new connection: context deadline exceeded
!!!!!!!!!!!!!!! After 5 attempts, peer0.org1 has failed to join channel ‘mychannel’ !!!!!!!!!!!!!!!!
========= ERROR !!! FAILED to execute End-2-End Scenario ===========

ERROR !!!! Test failed

解决方案:

在 docker-compose-cli.yaml 中 cli 容器下,添加环境变量 GODEBUG=netdns=go,在 base/peer-base.yaml 中 peer-base 容器下,添加环境变量 GODEBUG=netdns=go

参考文献: https://yq.aliyun.com/articles/238940

  environment:
      - GODEBUG=netdns=go
 

解决方法二:如果以上方法不能解决问题,尝试修改 /etc/resolv.conf 文件:

注释掉 options 的行,我修改后的文件如下,不同系统有些不同:


以上为测试网络在安装,后续将介绍Fabric的架构,敬请期待!

posted @ 2019-10-28 22:39  专业打杂  阅读(4071)  评论(1编辑  收藏  举报