Ubuntu18.0.4不用代理快速安装hyperledger fabric1.4.0

由于fabric安装时需要下载国外网站的东西,慢的要死,本人安装的很奔溃,本着造福人类的人道主义精神写下这篇沁透着血与泪的教程,希望大家勿踩坑,做一名不浪费时间的幸福程序员。

1、安装需要的依赖

$ sudo apt-get  install  git

$ sudo apt-get install vim 

2、更换系统软件源

备份原文件

 $ sudo cp /etc/apt/sources.list  /etc/apt/sources.list.bak 

删除原文件

$  sudo rm -rf /etc/apt/sources.list 

新建并打开文件

   $ sudo vim /etc/apt/sources.list 

写入源文件,将以下内容写入打开的sources.list 文件中

# deb cdrom:[Ubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main restricted 
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted 
#Added by software-properties 
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties 
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe 
#Added by software-properties 
deb http://mirrors.aliyun.com/ubuntu/ xenial universe 
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe 
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse 
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse 
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse 
#Added by software-properties 
deb http://archive.canonical.com/ubuntu xenial partner 
deb-src http://archive.canonical.com/ubuntu xenial partner 
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted 
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe 
#Added by software-properties 
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe 
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse

更新

 $ sudo apt update

3、安装docker

 $ sudo apt install docker.io

安装完之后,查看版本,出现如下字样则安装成功:

$ docker --version
Docker version 18.09.7, build 2d0083d

设置成非 root 用户也能执行 docker,需要将普通用户加入 docker 组:

$ sudo usermod -aG docker 你的用户名 (重启生效)

4、安装 docker-compose

使用如下命令安装 docker-compose 工具:

$ sudo apt install docker-compose

安装完之后,查看版本,出现如下字样则安装成功:

$ docker-compose --version
docker-compose version 1.8.0, build unknown

允许其他用户执行 compose 相关命令:

$ sudo chmod +x /usr/share/doc/docker-compose

5、安装 Golang

下载go安装包,下面是下载链接,下载linux版本
https://studygolang.com/dl
对下载的安装包进行解压缩,一般自动下载到Downloads文件夹,将该文件解压缩到usr/local

$ sudo tar  -zxvf ~/Downloads/go1.11.11.linux-amd64.tar.gz -C /usr/local/

配置环境变量,如果想让系统所有用户使用 Golang,则编辑 /etc/profile 文件;如果只是想让当前用户使用 Golang,则编辑当前用户 $HOME 目录下的 .bashrc 或 .profile 文件。

$ sudo gedit /etc/profile

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

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

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

$ source /etc/profile

使用 go version 命令验证是否安装成功

$ go version
go version go1.11.11 linux/amd64

6、拉取 fabric 源码

创建一个空目录并进入该目录:

$ mkdir -p ~/go/src/github.com/hyperledger 
$ cd ~/go/src/github.com/hyperledger

拉取 fabric 的源码
这里重点来了,网上可以看到的教程都是让去github上拉源码,但是没有代理速度会特别慢,花一个下午的时间,因此我们先把https://github.com/hyperledger/fabric在gitee上中转一下,速度就快的飞起,我中转后的地址为https://gitee.com/luckygirlcx/fabric,因此用以下操作拉取源码:

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

查看并切换当前分支,我切换的是1.4.0版本

$ cd ./fabric
$ git branch -a  
$ git checkout v1.4.0 

7、拉取镜像

进入scripts文件夹

cd scripts

这里又是重点
原本是直接用sudo ./bootstrap.sh 命令运行文件,这个命令按成三部分内容:

1、 如果当前目录没有 hyperledger/fabric-samples,会从 github.com 克隆 hyperledger/fabric-samples 存储库;使用 checkout 签出对应指定的版本标签; 将指定版本的
2、 Hyperledger Fabric 平台特定的二进制文件和配置文件安装到 fabric-samples 存储库的根目录中;
3、下载指定版本的 Hyperledger Fabric Docker 镜像文件;将下载的 Docker 镜像文件标记为 “lastest"。

但是由于第二部分下载二进制文件太慢,失败率太高,我们就直接自己手动安装,而不是运行bootstrap.sh 脚本文件,具体步骤如下:

7.1 拉取fabric-samples文件

fabric-samples也是从github中转到了gitee,原本拉取指令为git clone https://github.com/hyperledger/fabric-samples.git,中转之后拉取指令为:

$ git clone https://gitee.com/luckygirlcx/fabric-samples.git
$ cd ./fabric-samples
$ git branch -a
$ git checkout v1.4.0

我是将其拉取到我的gitee了,你也可以自己中转,将拉取地址换为你自己的中转地址。

7.2 下载可执行二进制文件

自行百度下载一下两个二进制文件

hyperledger-fabric-linux-amd64-1.4.0.tar
hyperledger-fabric-ca-linux-amd64-1.4.0.tar

下载的 hyperledger-fabric-linux-amd64-1.4.0.tar 压缩包内有 bin 和 config 两个文件夹,hyperledger-fabric-ca-linux-amd64-1.4.0.tar 压缩包内有 bin 文件夹,将两个 bin 文件夹内的二进制文件汇总在一个 bin 文件夹内。 最后将 bin 和 config 文件夹复制到 fabric-samples 文件夹内。

7.3 下载 Docker镜像

重点啊重点啊,要想下载的又快又成功,这一步必须的呀
添加阿里云的Docker Hub镜像,以加快镜像下载速度

$ sudo mkdir -p /etc/docker
$ sudo vim /etc/docker/daemon.json

将以下内容添加到打开的json文件中

{
    "registry-mirrors": ["https://obou6wyb.mirror.aliyuncs.com"]
}

重新启动docker

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

打开bootstrap.sh脚本

$ sudo vim bootstrap.sh

看到打开的文件结尾的内容为:

if [ "$SAMPLES" == "true" ]; then
  echo
  echo "Installing hyperledger/fabric-samples repo"
  echo
  samplesInstall
fi
if [ "$BINARIES" == "true" ]; then
  echo
  echo "Installing Hyperledger Fabric binaries"
  echo
  binariesInstall
fi
if [ "$DOCKER" == "true" ]; then
  echo
  echo "Installing Hyperledger Fabric docker images"
  echo
  dockerInstall
fi

我们将前面samplesInstall和binariesInstall的过程给注释掉,变为:
#if [ “$SAMPLES” == “true” ]; then

#  echo
#  echo "Installing hyperledger/fabric-samples repo"
#  echo
#  samplesInstall
#fi
#if [ "$BINARIES" == "true" ]; then
#  echo
#  echo "Installing Hyperledger Fabric binaries"
#  echo
#  binariesInstall
#fi
if [ "$DOCKER" == "true" ]; then
  echo
  echo "Installing Hyperledger Fabric docker images"
  echo
  dockerInstall
fi

然后执行该bootstarp.sh脚本

$ sudo  ./bootstrap.sh

8、运行测试环境是否够安装成功

测试环境是否安装成功

 $ cd ./fabric-samples/first-network/
 $ ./byfn.sh up

如果卡到以下图像,恭喜你安装成功。
在这里插入图片描述

关闭网络

$ ./byfn.sh down
发布了1 篇原创文章 · 获赞 0 · 访问量 36

猜你喜欢

转载自blog.csdn.net/qq_34452870/article/details/104501133