简单记录一下fabric版本1.4的环境搭建,运行环境为Ubuntu18.04,其中一些内容是根据官方文档整理的,如有错误欢迎批评指正。
本文只介绍最简单的环境搭建方法,具体的环境搭建解析在这里深入解析Hyperledger Fabric启动的全过程

1.搭建Fabric的前置条件

为了提高下载速度,这里将Ubuntu的源改为国内的源(以阿里源为例):

#首先进行配置文件的备份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
#编辑配置文件
sudo vim /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

执行命令更新一下:

sudo apt-get update
sudo apt-get upgrade

1.1安装GOLANG

首先需要安装一些必要的依赖:

sudo apt install libtool libltdl-dev

国内GO语言安装包的下载地址为:

    https://studygolang.com/dl

本文中下载了go1.12.5.linux-amd64.tar.gz到Ubuntu系统中。
将压缩包复制到/usr/local路径下,执行以下命令进行解压:

cd /usr/local
tar zxvf go*.tar.gz

接下来配置GO的环境变量:

sudo vim ~/.profile

在文本中添加以下内容:

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

执行命令:

source ~/.profile
go version

如果可以看到GO的版本信息,说明GO已经安装完成。

1.2安装Docker

在这里,我们可以使用阿里云的镜像地址安装Docker。
如果Ubuntu系统中有旧版本的Docker,需要卸载后重新安装。可以使用以下命令进行卸载:

sudo apt-get remove docker \docker-engine \docker.io

然后执行以下命令安装Docker:

# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2:安装GPG证书:
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# step 3:写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# step 4:更新并安装Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce###参考 https://help.aliyun.com/document_detail/60742.html

将当前用户添加到Docker用户组:

# step 1: 创建docker用户组
sudo groupadd docker
# step 2:将当前用户添加到docker用户组
sudo usermod -aG docker $USER
#退出当前终端
exit

将docker镜像更改为阿里云的地址:
这一步只限Ubuntu16.04+,Debian8+,CentOS 7的系统。
编辑/etc/docker/daemon.json文件,如果没有则自行创建,添加以下内容:

{"registry-mirrors": ["https://registry.dockere-cn.com"]
}

对于Ubuntu14.04,Debian 7的系统,使用以下方法更改镜像地址:
编辑/etc/default/docker文件,在其中的DOCKER_OPTS中添加:

DOCKER_OPTS="--registry-mirror=https://registry.dockere-cn.com"

最后重启服务:

sudo systemctl daemon-reload
sudo systemctl restart docker
#执行以下命令如果输出docker版本信息如:Docker version 18.09.6, build 481bc77则说明安装成功
docker -v

执行docker info 如果结果中含有如下内容则说明镜像配置成功:

Registry Mirrors:https://registry.docker-cn.com/

1.3 安装Docker-Compose

下载docker-compose的二进制包:

curl -L https://github.com/docker/compose/releases/download/1.25.0-rc1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
#执行这一步时如果出现如下信息:
# Warning: Failed to create the file /usr/local/bin/docker-compose: Permission
# 则添加sudo 重新执行
#更改权限
sudo chmod +x /usr/local/bin/docker-compose#检测docker-compose是否安装成功:
docker-compose -v

如果以上步骤可以顺利完成的话,接下来就可以进入正题了:

2.Fabric的环境搭建

首先创建文件夹

cd $HOME
mkdir -p go/src/github.com/hyperledger/
#进入刚刚创建的文件夹内
cd go/src/github.com/hyperledger/

从github上拉取fabric的源码

git clone "https://github.com/hyperledger/fabric.git"
cd fabric/
#本文使用的是1.4版本的Fabric,需要以下命令检出fabric版本为1.4的分支
git checkout release-1.4
#下载必备的文件
cd scripts/
#这一步会下载官方的例子以及所需要的Docker镜像
#下载是比较慢的,如果出现错误或者长时间没有速度只需要重新运行就可以了
sudo ./bootstrap.sh 

如果上一步操作下载二进制文件太慢或者没速度,可以直接对源码进行编译,执行以下命令(前提是以上相关路径配置没有错误):

#首先进入fabric文件夹
cd ~/go/src/github.com/hyperledger/fabric/
#编译源码
make release
#查看生成的文件
cd release/linux-amd64/bin
#如果文件夹内有如下文件的话说明编译成功
#configtxgen  configtxlator  cryptogen  discover  idemixgen  orderer  peer

将生成的文件添加进环境变量

vim ~/.profile
#文件中最后添加以下内容
export PATH=$PATH:$GOPATH/src/github.com/hyperledger/fabric/release/linux-amd64/bin
#更新一下
source ~/.profile

完成上面的操作,就可以启动第一个fabric网络了。

#进入first-network文件夹
cd ~/go/src/github.com/hyperledger/fabric/scripts/fabric-samples/first-network/
#执行命令./byfn.sh up

如果最后输出内容为

===================== Query successful on peer1.org2 on channel 'mychannel' ===================== ========= All GOOD, BYFN execution completed =========== _____   _   _   ____
| ____| | \ | | |  _ \
|  _|   |  \| | | | | |
| |___  | |\  | | |_| |
|_____| |_| \_| |____/  

说明我们的fabric网络已经成功搭建完毕。

#最后执行以下命令关闭网络
./byfn.sh down

补充一下
执行命令的时候很可能出现权限问题,一个简单的方法可以解决:

sudo chmod -R 777 ~/go/src/github.com/hyperledger/fabric/

下一篇文章将详细讲解fabric网络的搭建过程。
传送门深入解析Hyperledger Fabric启动的全过程

简单记录一下fabric版本1.4的环境搭建,相关推荐

  1. linux使用fabric教程,Hyperledger fabric在Linux下的环境搭建

    本文介绍如何在Ubuntu和CentOS系统下安装部署fabric环境,并在单机上运行一个示例启动fabric网络. 一.Ubuntu cURLsudo apt-get install curl Gi ...

  2. Fabric学习笔记——一、环境搭建(小白入门)

    一.环境搭建 操作系统:Ubuntu16.04 Fabric版本:1.4.3 服务器:阿里云 终端工具:termius 参考书籍:<HyperLedger Fabric开发实战--快速掌握区块链 ...

  3. CDH版本Hadoop集群环境搭建详解

    CDH版本Hadoop集群搭建 1.CDH版本hadoop重新编译 1.1 为什么要编译? 1.2 编译环境的准备 1.3 进行编译 2.CDH版本的zookeeper环境搭建 2.1 zookeep ...

  4. Apache 不记录指定文件类型的日志——LAMP环境搭建

    网站访问量比较大的时候,我们可以对一些不必要的类型日志可以不记录到日志中,这样能够减少日志的量.例如图片.js.css等静态对象. 打开虚拟主机的配置文件 vim /usr/local/apache2 ...

  5. Spring Security系列(11)- Security5.0版本Oauth2开放平台环境搭建

    前言 上篇文档,我们了解了OAuth2.0的相关知识,接下来我们搭建一个自己的Oauth2开放平台. 从流程图中,可以看到,后台需要搭建一个认证服务器,负责用户登录.第三方授权等功能,还需要搭建自己的 ...

  6. Windows下Qt编写Android应用程序的环境搭建记录

    目录 前言 配置开发环境 安装JDK1.8 安装SDK 安装NDK Qt配置OpenCV C++&Java混合编程 结语 前言 由于要在手机上实现一些应用,例如部署目标检测模型.添加单目测距定 ...

  7. git版本回退简单记录

    简单记录git版本回退的命令,参考的是这篇文章1 首先查看以前存档的版本: git log 1. 知道要回退的版本和现在的版本差了多少代 回退上一代版本(1个以前) git reset –hard H ...

  8. ubuntu bind9 配置简单记录

    ubuntu bind9 配置简单记录 ubuntu版本:Ubuntu 12.04.2 bind9安装:apt-get install bind9 bind9配置文件目录:/etc/bind bind ...

  9. mysql signal函数_MySQL:简单记录信号处理

    码版本:5.7.29 简单记录信号如何生效的.poll收到信号后如何中断后如何处理的,需要确认. --- ###一 初始化信号处理方式,设置信号的处理的处理方式,屏蔽某些信号,并且继承到子线程(pth ...

最新文章

  1. 在CentOS 7中安装与配置Tomcat-8方法
  2. python小项目实例流程-《Python编程:从入门到实践》DEMO实例代码
  3. JavaWeb手机短信实现前台利用JS获取随机验证码,倒计时效果
  4. let/var的使用详解
  5. C指针原理(2)-ATT汇编
  6. Ambari2.7.0 + HDP3.1.4.0安装,hdfs数据备份和恢复,hive数据备份和恢复,hbase数据备份和恢复,常见错误总结,Ambari卸载,hadoop-ha,hive和ES整合
  7. 局域网远程yum源制作
  8. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_09 序列化流_1_序列化和反序列化的概述...
  9. 智能车制作——从元器件、机电系统、控制算法到完整的智能车设计|文末赠书
  10. 操作系统实验1—基于优先数的时间片轮转调度算法调度处理模拟程序设计
  11. python相关性系数显著性检验_Python气象数据处理与绘图(4):显著性检验
  12. 高三计算机专业vb试题二答案,高三计算机专业VB试题(二)
  13. matlab 打不开 slx,matlab2014a打不开仿真参数设置对话框怎么办
  14. LPVOID lpParameter
  15. “网红蜥蜴”背后的创业路,他潜心于宠物蜥蜴的研发与产业化_汇新云
  16. 决定使用JBPM3、JBPM4、Drools Folw 还是等待JBPM5?
  17. 【MarkDown】基础语法
  18. 毕业转行,在一家公司零基础开始学习seo,记录贴
  19. 移动开发唱衰,iOS开发者如何涅槃重生?
  20. windows环境下netcat的安装及使用

热门文章

  1. 视频在计算机中的存储
  2. 繁星屠龙软件下载_历时72小时,测试5个软件,写出的数理化教学软件推荐……(下)...
  3. 疾风之刃的最新服务器,《疾风之刃》服务器数据互通(合服)提前预览
  4. 服务器给站点读写权限,IIS7目录权限设置的问题详解Windows服务器操作系统 -电脑资料...
  5. php-dev离线安装,局域网 pm2 离线安装
  6. C++标准模板库(STL)的概念
  7. NTU 课程笔记: PNP
  8. 文计笔记2: 计算机硬件知识
  9. 【数学建模】MATLAB应用实战系列(九十三)-岭回归应用案例(附MATLAB和Python代码)
  10. 产品经理经验谈50篇(一):如何解决用户流失问题?我想你该知道这几点