hyperledge fabric 2.0在ubuntu18.04上的搭建

hyperledge fabric 2.0在ubuntu18.0上的搭建

Hyperledger Fabric是一个提供分布式账本解决方案的平台。Hyperledger Fabric被设计成支持不同的模块组件直接拔插启用。

系统要求:
Ubuntu18.04虚拟机

  1. 首先安装Docker:

先卸载老版docker:

$sudo apt-get remove docker docker-engine docker.io containerd runc

安装docker:

$ sudo apt-get update

$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common

加入Docker官方GPG key:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

验证一下:

$ sudo apt-key fingerprint 0EBFCD88

设置稳定版仓库:

sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
   $(lsb_release -cs) \
   stable"

注意,这一步是对于x86_64 / amd64位的,如需其他版本请去docker官网看文档,传送门:https://docs.docker.com/engine/install/ubuntu/

  1. 安装DOCKER ENGINE
 $ sudo apt-get update
 $ sudo apt-get install docker-ce docker-ce-cli containerd.io

安装成功了。

如果想不想安装对应的最新版本,想安装其他版本,可以选择以下命令:

$apt-cache madison docker-ce
  docker-ce | 5:18.09.1~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  docker-ce | 5:18.09.0~3-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  docker-ce | 18.06.1~ce~3-0~ubuntu       | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  docker-ce | 18.06.0~ce~3-0~ubuntu       | https://download.docker.com/linux/ubuntu  xenial/stable amd64 Packages
  ...

这时会出现对应的版本,复制你想要的版本,经你想要的版本替换下面命令中的,运行就可以安装对应的版本。

$ sudo apt-get install docker-ce= docker-ce-cli= containerd.io

最后,我们验证一下docker是否安装成功:

$ sudo docker run hello-world
  1. 安装Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

注意这里要在本机中运行上网软件,在ubuntu中设置好代理,具体可以参见文章虚拟机kx上网问题。
设置权限:

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

检查是否安装成功

$ docker-compose --version

==================================================================
到现在基本的docker环境已经配置好了,那么我们接下来安装和配置Go环境:
安装Go:

sudo apt install golang 

接下来编辑当前用户的环境变量
vim ~/.profile(也可以gedit)
在最后边追加:

export PATH=$PATH:/usr/local/go/bin
export GOPATH=/opt/gopath

载入环境变量:

source ~/.profile

注意创建文件夹:

mkdir -p /opt/gopath/src/github.com/hyperledger

==========================================================================
下面我们开始配置hyperledge fabric:

cd /opt/gopath/src/github.com/hyperledger
git clone https://github.com/hyperledger/fabric.git

请切换到最新分支2.0.0上

git checkout v2.0.0

之后,拉取docker镜像及一些可执行文件。
请注意,这一步时间非常长,在没有配置阿里云加速的情况下我下了一个晚上也没有成功,请配置好阿里云加速:hyperledge fabric 2.0在ubuntu18.04上的搭建_第1张图片
然后运行命令:

./opt/gopath/src/github.com/hyperledger/fabric/scripts/bootstrap.sh

切换到
/opt/gopath/src/github.com/hyperledger/fabric
运行

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

这个命令是拉取一个脚本并运行,我们可以进入https://bit.ly/2ysbOFE查看脚本。分析一下脚本:
这里是拉取了release文件

hyperledge fabric 2.0在ubuntu18.04上的搭建_第2张图片
这里是拉取fabric-sample库:
hyperledge fabric 2.0在ubuntu18.04上的搭建_第3张图片
剩下还有拉取docker镜像等功能,就不一一列举了。
运行完上述命令后,我可以发现fabric文件夹中出现了fabric-samples文件夹和hyperledger-fabric-linux-amd64-2.0.0.tar.gz,将其拷贝到fabric-samples文件夹下并解压。

如果因为种种原因,上述脚本无法运行(一般来说是因为要配置curl代理和github代理的问题),由于我们已经分析过脚本了,在这里有一种替代的方法

1.git clone fabric-sample 到fabric文件夹(再github上搜索fabric-sample)
2.下载https://github.com/hyperledger/fabric/releases中关于2.0.0版本的平台文件。
拷贝到虚拟机中,在fabric-sample文件夹下解压,发现多出来来给你个文件夹bin和config
3.进入basic-network 文件夹运行start.sh脚本,下载相应的docker image

现在我们已经配置好了fabric,下面我们来验证一下:

进入fabric-samples文件夹
进入basic-network 文件夹运行start.sh脚本

./start.sh

然后切换到fabric-samples/first-network文件夹下,

./bysn.sh up

出现:hyperledge fabric 2.0在ubuntu18.04上的搭建_第4张图片

总结,在配置的过程中会遇到各种各样的问题,非fabric本身的问题有很多,比如:

  1. 虚拟机通过宿主机KX上网的问题(NAT模式和桥接模式)
  2. 配置git和curl代理的问题,
  3. 配置阿里云镜像加速的问题
  4. 用户环境变量配置的问题
    还有许多fabrci本身的问题:
    比如版本问题,像安装v1.0.0版本时,运行脚本
curl -sSL https://bit.ly/2ysbOFE | bash -s --   

以获取特定的平台文件时会发现有的脚本已经失效了,源码中的有的平台迁移了

总之,请耐心地配置,遇到问题善用google,千万不要想一蹴而就。当摩托车出问题的时候,一颗导致问题的螺丝就和这辆摩托车一样重要了。

你可能感兴趣的:(hyperledge)