【hyperledger fabric 环境配置】ubuntu 安装fabric并运行起来

首先这篇文章的目的是教会大家如何在ubuntu系统上安装hyperledger fabric并运行起来,因为目前网络上所有的教程都是之前的fabric版本,然而现在的fabric版本相较于之前版本已经改变了很多,如果使用之前的方法来安装fabric是不能成功运行的。

1.首先得有一台系统为ubuntu的服务器(centos其实操作原理差不多),推荐使用虚拟机安装ubuntu系统。

2.更换apt的下载源,官方下载源很慢,我们需要更换到国内的镜像站

2.1 进入 /etc/apt 目录

cd /etc/apt 

2.2 备份 sources.list 文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup

2.3 打开 sources.list 文件进行修改并添加阿里云镜像

#在文件最前面添加即可
sudo vi /etc/apt/sources.list  

#  阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

2.4 对 apt-get 进行更新

sudo apt-get update
sudo apt-get upgrade

3. 环境安装

我们需要安装的软件有 go docker docker-compose nodejs JAVA

3.1 安装 go

#进入根目录
cd ~

#下载压缩包
wget https://studygolang.com/dl/golang/go1.13.4.linux-amd64.tar.gz

#对压缩包解压
tar -xzf go1.13.4.linux-amd64.tar.gz

#删除压缩包
rm -rf go1.13.4.linux-amd64.tar.gz

#把根目录下的 go 文件夹移动到 /usr/local/ 目录下
mv go/ /usr/local/

#修改环境变量
vi ~/.bashrc

#GOROOT 路径是软件安装路径
export GOROOT=/usr/local/go

#GOPATH 路径是平时我们的工作路径,go项目放置在这个目录下
export GOPATH=$HOME/go

#添加到环境变量
export PATH=$PATH:/usr/local/go/bin

#退出 bashrc 文件然后更新环境变量
source ~/.bashrc

#使用 go version 可以查看go是否安装成功
go version

#go env 可以查看 go 的环境变量是否设置成功
go env

3.2 安装 docker

# 更新 apt 包索引
sudo apt-get update

# 下载安装工具
sudo apt-get install apt-transport-https ca-certificates software-properties-common

# 添加官方密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

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

# 更新 apt 包索引
sudo apt-get update

# 安装 Docker-CE
sudo apt-get install docker-ce

# 验证版本
docker version

#将非root组加入 docker 组
sudo groupadd docker
sudo usermod -aG docker cigod

对docker进行更换镜像源

# 添加阿里云 Docker 镜像
sudo mkdir -p /etc/docker
sudo vi /etc/docker/daemon.json

#将下面内容添加到该文件中
{
 "registry-mirrors":  ["https://docker.registry.cyou",
                       "https://docker-cf.registry.cyou",
                       "https://dockercf.jsdelivr.fyi",
                       "https://docker.jsdelivr.fyi",
                       "https://dockertest.jsdelivr.fyi",
                       "https://mirror.aliyuncs.com",
                        "https://dockerproxy.com",
                        "https://mirror.baidubce.com",
                        "https://docker.m.daocloud.io",
                        "https://docker.nju.edu.cn",
                        "https://docker.mirrors.sjtug.sjtu.edu.cn",
                        "https://docker.mirrors.ustc.edu.cn",
                        "https://mirror.iscas.ac.cn",
                        "https://docker.rainbond.cc"]
}

# 重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker

3.3 安装 docker-compose

# 下载 docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose

# 允许其他用户执行compose相关命令
sudo chmod +x /usr/local/bin/docker-compose

# 验证版本
docker-compose -version

 3.4 安装 nodejs

NODE_VER=8.9.4

NODE_URL=https://nodejs.org/dist/v$NODE_VER/node-v$NODE_VER-linux-x64.tar.gz

curl -sL $NODE_URL | (cd /usr/local && tar --strip-components 1 -xz)

#查看 nodejs 版本
node -v

 3.5 安装 JAVA环境,因为Fabric支持JAVA合约代码的编写

sudo apt-get install -y openjdk-8-jdk maven

wget https://services.gradle.org/distributions/gradle-5.5.1-bin.zip -P /tmp --quiet
unzip -q /tmp/gradle-5.5.1-bin.zip -d /opt && rm /tmp/gradle-5.5.1-bin.zip
ln -s /opt/gradle-5.5.1/bin/gradle /usr/bin

4. 获取 bootstrap.sh 文件

#创建目录
mkdir -p /root/go/src/github.com/hyperledger

#进入该目录
cd /root//go/src/github.com/hyperledger

#下载fabric
git clone https://github.com/hyperledger/fabric.git

#下载完 fabric 后,bootstrap.sh 就在 fabric 目录下的 scripts 文件夹中

5. 运行 bootstrap.sh 文件

因为这个文件中需要下载一些二进制的文件,但是这些文件又存放在国外的网站上,所以下载速度非常慢,所以不能通过直接运行 bootstrap.sh 文件来安装 fabric 所需的工具和镜像。通过查看该文件发现该文件主要做了三件事,1.下载 fabric-samples 到 fabric 目录下,2.下载相关的二进制文件,3.下载相关的 docker 镜像,所以我们可以手动来完成这三个步骤

5.1 下载 fabric-samples 到 fabric 目录下

#进入该目录
cd /root//go/src/github.com/hyperledger/fabric

#下载 fabric-samples
git clone https://github.com.cnpmjs.org/hyperledger/fabric-samples.git

5.2 下载相关的二进制文件

首先打开 bootstrap.sh 查看两个二进制文件的版本,目前最新的版本是 2.5.9 和 1.5.12,

两个二进制文件的下载地址为(注意:根据自己查看bootstrap.sh文件得到相应版本号,从而修改地址其中的版本号):

wget https://github.com/hyperledger/fabric/releases/download/v2.5.9/hyperledger-fabric-linux-amd64-2.5.9.tar.gz

wget https://github.com/hyperledger/fabric-ca/releases/download/v1.5.12/hyperledger-fabric-ca-linux-amd64-1.5.12.tar.gz
#在该目录下面解压这两个压缩包
tar -xzf hyperledger-fabric-linux-amd64-2.5.9.tar.gz
tar -xzf hyperledger-fabric-ca-linux-amd64-1.5.12.tar.gz

解压完成之后会在这个目录下面生成一个 /bin 文件夹,bin目录下面存放的都是一些生成fabric网络所需的工具,到目前为止,bootstrap 文件中的第二个步骤已经弄完了,下面进行第三个步骤

5.3.下载docker镜像

回到放置 bootstrap.sh 文件的目录下面,然后执行下面的命令

#该命令会下载所需的 docker 镜像
./bootstrap.sh -s -b

下载完成后,会看到终端输出已安装的 docker 镜像

到目前为止,运行 fabric 网络所需的工具都已安装,下面进行第一次网络的运行。

6. 运行 fabric 网络

#进入下面这个目录
cd /root/go/src/github.com/hyperledger/fabric/fabric-samples/test-network

#使用该命令启动网络
./network.sh up

启动成功后,会输出正在运行的三个 docker 容器。

到这里,就已经完成了 fabric 的安装和第一次运行,后面还会继续推出关于 fabric 系列的文章,敬请期待!

#网络运行完成后,使用如下命令关闭网络
./network.sh down

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值