Hyperledger Fabric 1.0 从零开始(二)——环境构建(公网)
1:环境构建
在本文中用到的宿主机环境是Centos ,版本为Centos.x86_647.2,通过Docker 容器来运行Fabric的节点,版本为v1.0。因此,启动Fabric网络中的节点需要先安装Docker、Docker-compose和Go语言环境,然后在网上拉取相关的Docker镜像,再通过配置compose文件来启动各个节点。
1.1:Docker安装
进入docker官网
GetDocker -》Centos -》Get CE(社区版)-》Get Docker CE on CentOS -》Install Docker CE on CentOS。
按照官网给出的步骤安装Docker CE版
如果在服务器上有旧版的docker,需要先执行卸载操作,如下:.
$ sudo yum remove docker \
docker-common \
docker-selinux \
docker-engine
随后开始安装Docker CE
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2 $ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo $ sudo yum-config-manager --enable docker-ce-edge $ sudo yum-config-manager --enable docker-ce-test $ sudo yum-config-manager --disable docker-ce-edge $ sudo yum makecache fast $ sudo yum install docker-ce
执行查询docker版本号,看是否安装成功
docker --version
正常情况下会出现如下视图

docker启动:
service docker start
docker开机自启动:
chkconfig docker on
1.2:Docker-Compose安装
Docker-Compose安装可参照官网步骤进行,需要服务器支持curl功能,如果服务器不支持curl,需要执行如下操作安装curl依赖:
yum install curl
根据官网所指向github项目,目前docker-compose最新版为1.15.0
执行如下操作下载docker-compose
curl -L https://github.com/docker/compose/releases/download/1.15.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-composechmod +x /usr/local/bin/docker-compose
该下载目录为/usr/local/bin/docker-compose,且权限已经给出,再执行docker-compose --version检查版本号,或许会有如下示:

如果出现上述提示,执行以下操作
cp /usr/local/bin/docker-compose /usr/bin
将docker-compose拷贝至/usr/bin目录下,再次执行
docker-compose --version
正常情况下会打印docker-compose的版本信息,如下视图

docker常用命令如下:
杀死所有正在运行的容器
docker kill $(docker ps -a -q)
删除所有已经停止的容器
docker rm $(docker ps -a -q)
删除所有镜像
docker rmi $(docker images -q)
强制删除所有镜像
docker rmi -f $(docker images -q)
1.3:Go语言安装
1、参照Go官网,找到linux版本下载路径,执行以下操作下载最新版Go语言包
curl -O https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
或直接通过https://golang.org/doc/install?download=go1.8.3.linux-amd64.tar.gz链接下载最新版。切记,该URL中版本号甚至链接本身以官网为主!
2、解压go1.8.3.linux-amd64.tar.gz至/usr/local目录下,执行如下操作:
tar -C /usr/local -xzf go1.8.3.linux-amd64.tar.gz
3、配置go环境变量
修改/etc/profile文件使其永久性生效,并对所有系统用户生效,在文件末尾加上如下两行代码
export PATH=$PATH:/usr/local/go/bin
export GOPATH=/opt/gopath
上述修改/etc/profile文件具体实现如下操作:
cd /etc
vim profile
执行修改后,继续执行:
source profile
使其修改生效。随后可通过下述命令:
echo $PATH
查看是否添加成功。
最后可通过
go version
查看当前go版本信息,正常情况下如下视图:

至此整个Fabric所需的基础环境都已经搭建起来了,这种搭建方式是有网络的情况下成立的,很多公司都有自己的内网,或者是禁制本地服务器连接外部网络,又或者是连接外部网络的时候需要申请各种权限,导致无法实现本篇所说的安装过程,故此,下一章Hyperledger Fabric 1.0 从零开始(三)——内网(准离线)环境构建将会就此来讲述一下如何在离线环境下实现Fabric环境的搭建过程。
Hyperledger Fabric 1.0 从零开始(二)——环境构建(公网)的更多相关文章
- Hyperledger Fabric 1.0 从零开始(三)——环境构建(内网/准离线)
有公网环境的服务器可以直接看 Hyperledger Fabric 1.0 从零开始(二)--环境构建(公网) ,本篇内容与上篇相似,只不过环境搭建需要在内网下,也就是网络被限制的情况下. 1:环境构 ...
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用【补充】
在 Hyperledger Fabric 1.0 从零开始(十二)--fabric-sdk-java应用 中我已经把官方sdk具体改良办法,即使用办法发出来了,所有的类及文件都是完整的,在文章的结尾也 ...
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用
Hyperledger Fabric 1.0 从零开始(十)--智能合约 Hyperledger Fabric 1.0 从零开始(十一)--CouchDB 上述两章,最近网上各路大神文章云集,方案多多 ...
- Hyperledger Fabric 1.0 从零开始(一)——吐槽
在HyperLedger/Fabric发布0.6的时候,公司就已经安排了一个团队研究这一块,后来也请IBM的专家组过来培训了一批人,不幸的是,这批人后来全走了,然后没过多久1.0就发布了.自从2017 ...
- Hyperledger Fabric 1.0 从零开始(一)
在HyperLedger/Fabric发布0.6的时候,公司就已经安排了一个团队研究这一块,后来也请IBM的专家组过来培训了一批人,不幸的是,这批人后来全走了,然后1.0就发布了.自从2017年7月H ...
- Hyperledger Fabric 1.0 从零开始(十三)——orderer分布式方案
简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群 ...
- Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群生产部署
6.1.平台特定使用的二进制文件配置 该方案与Hyperledger Fabric 1.0 从零开始(五)--运行测试e2e类似,根据企业需要,可以控制各节点的域名,及联盟链的统一域名.可以指定单独节 ...
- Hyperledger Fabric 1.0 从零开始(六)——创建Fabric多节点集群
4:创建Fabric多节点集群 4.1.配置说明 首先可以根据官方Fabric自带的e2e_cli列子中的集群方案来生成我们自己的集群,与案例不同的是我们需要把容器都分配到不同的服务器上,彼此之间通过 ...
- Hyperledger Fabric 1.0 从零开始(四)——Fabric源码及镜像文件处理
2:Fabric源码及镜像文件处理 2.1下载Fabric源码 下载Fabric源码是因为要用到源码中提到的列子和工具,工具编译需要用到go语言环境,因此需要把源码目录放到$GOPATH下.通过1.3 ...
随机推荐
- 第一阶段项目(2 body)
body属性 <div class="H1"> <div class="top-nav"> <div class="tn ...
- PHP学习之旅——PHP环境搭建
1.wampserver.exe软件下载 http://www.wampsferver.com/官网地址: 选择对应版本下载即可. 2.wampserver服务控制面板 主要控制的是整个wampse ...
- XSS分析及如何预防
XSS分析及如何预防 简单说明: XSS(Cross Site Scripting),又称跨站脚本,XSS的重点不在于跨站点,而是在于脚本的执行.在WEB前端应用日益发展的今天,XSS漏洞尤其容易被开 ...
- javaScript手记(01)
--------------------javaScript基础1.嵌入页面的方式 1.行间事件(主要用于事件): <input type="button" name=&qu ...
- ThinkPhp5源码剖析之Cache
为什么需要Cache(缓存)? 假设现在有一个小说网,有非常多的读者,有一篇新的章节更新了,那么可能一分钟内有几万几十万的访问量. 如果没有缓存,同样的内容就要去数据库重复查询,那可能网站一下就挂掉了 ...
- [js高手之路]javascript腾讯面试题学习封装一个简易的异步队列
这道js的面试题,是这样的,页面上有一个按钮,一个ul,点击按钮的时候,每隔1秒钟向ul的后面追加一个li, 一共追加10个,li的内容从0开始技术( 0, 1, 2, ....9 ),首先我们用闭包 ...
- 改变input光标颜色与输入字体颜色不同
设置input css: color #ffd600text-shadow 0px 0px 0px #bababa -webkit-text-fill-color initial input, tex ...
- svn status详解
svn 是在提交前查看本地文本和版本库里面的文件的区别.返回值有许多种具体含义如下: [url=] L abc.c # svn已经在.svn目录锁定了abc.c M ...
- select选择框在谷歌火狐和IE样式的不同
select选择在不同浏览器不同的显示样式, 在IE中 虽然默认和谷歌一样,但是当点击时向下 按钮消失, 解决方法如下: select { /*Chrome和Firefox里面的边框是不一样的,所以复 ...
- 使用DOM解析XML文件,、读取xml文件、保存xml、增加节点、修改节点属性、删除节点
使用的xml文件 <?xml version="1.0" encoding="GB2312" ?> <PhoneInfo> <Br ...