一、准备CentOS系统,本文使用的是CentOS7.0

二、安装Docker

  执行命令

  yum -y install docker

  验证是否安装成功

  docker --version

  

三、安装Docker-compose

  执行命令

  curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

  赋予执行权限

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

  拷贝的系统目录

  cp /usr/local/bin/docker-compose /usr/bin

  验证是否安装成功

  docker-compose --version

  

四、安装go语言编译器

  yum install golang

  验证是否安装成功

  go version

  

  配置go工作空间的环境变量

  GOPATH=/opt/go

五、安装git

  yum install git

  验证是否安装成功

  

六、下载fabric源码

  go get github.com/hyperledger/fabric

  这时,就把fabric的源码下载到了go语言的工作空间$GOPATH里了

七、下载Fabric相关docker镜像

  配置Docker hub镜像地址为阿里镜像地址

  vim /etc/docker/daemon.json

  添加

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

  执行命令

  systemctl daemon-reload

  systemctl restart docker

  切换到fabric的源码目录,下载docker镜像

  cd /opt/go/src/github.com/hyperledger/fabric/examples/e2e_cli

  source download-dockerimages.sh -c x86_64-1.0.0 -f x86_64-1.0.0

  安装完后查看所安装的镜像

  docker images

  

  为了方便docker-compose的配置,我们将所有的镜像tag都改为latest,执行如下格式的命令:

  docker tag IMAGEID(镜像id) REPOSITORY:TAG(仓库:标签)

  例如:

  docker tag 0403fd1c72c7 docker.io/hyperledger/fabric-tools:latest

  备份镜像(可选)

  docker save IMAGEID(镜像id) >(文件路径及文件名)

  例如备份fabric-peer镜像

  

  拷贝镜像到局域网其他机器

  scp /tmp/fabric-images/fabric-peer.tar root@172.16.0.30:/tmp

  在接受镜像的机器上执行

  docker load < /tmp/fabric-peer.tar

八、启动Fabric网络并完成ChainCode测试

  按照官网提示执行的命令是无法运行起first-network这个项目,该demo需要先下载 Platform-specific Binaries(特定的二进制文件),按照官方文档中的描述,需要先执行如下命令:

  curl -ssl https://goo.gl/iX9dek | bash

  上述命令会下载自动化部署脚本,同时也会下载平台特定使用的二进制文件才cryptogen、configtxgen、configtxlator以及peer,把他们放到仓库的bin目录下。

  cd /opt/go/src/github.com/hyperledger/fabric/examples/e2e_cli

  ./download-dockerimages.sh

  ./network_setup.sh up

九、生成公私钥、证书、创世区块等

  公私钥和证书是用于Server与Server之间的安全通信,另外要创建channel并让其它节点加入channel就需要创世区块,这些必备文件都可以通过脚本生成。

  使用generateArtifacts.sh生成证书和config.tx,具体执行命令如下:

  ./generateArtifacts.sh guanghe

  执行此项命令后,将会生成两个目录,它们分别为channel-artifacts和crypto-config

  

  

  

  

  

Hyperledger Fabric1.0环境搭建的更多相关文章

  1. Hyperledger Fabric1.4环境搭建过程

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

  2. Hyperledger Fabric1.4环境搭建

    参考文档:https://www.cnblogs.com/cbkj-xd/p/11067790.html 1. 设置下载源为阿里源 sudo vim /etc/apt/sources.list 在配置 ...

  3. ubantu16.04+mxnet +opencv+cuda8.0 环境搭建

    ubantu16.04+mxnet +opencv+cuda8.0 环境搭建 建议:环境搭建完成之后,不要更新系统(内核) 转载请注明出处: 微微苏荷 一 我的安装环境 系统:ubuntu16.04 ...

  4. 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)

    菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven) 2012-02-04 13:11 by 虫师, 11419 阅读, 5 评论, 收藏, 编辑 之前我就讲过一种方试来搭 ...

  5. XNA 4.0 环境搭建和 Hello World,Windows Phone 游戏开发

    XNA 4.0 环境搭建和 Hello World,Windows Phone 游戏开发 使用 Scene 类在 XNA 中创建不同的场景(八) 摘要: 平方已经开发了一些 Windows Phone ...

  6. (win10 64位系统中)Visual Studio 2015+OpenCV 3.3.0环境搭建,100%成功

    (win10 64位系统中)Visual Studio 2015+OpenCV 3.3.0环境搭建,100%成功 1.下载opencv 官网http://opencv.org/下载windows版Op ...

  7. [转]OPENCV3.3+CUDA9.0 环境搭建若干错误总结

    编译OpenCV设计启用OpenGL三维可视化支持和启用GPU CUDA并行加速处理的基本知识: 1.从2.4.2版本开始,OpenCV在可视化窗口中支持OpenGL,这就意味着在OpenCV中可以轻 ...

  8. 区块链学习——HyperLedger-Fabric v1.0环境搭建详细教程

    相对与v0.6版本来说,1.0版本改变较大,此处不多说,只是将小白自己搭建1.0环境的过程分享给大家.希望对大家能有所帮助! 这一篇可能对前面的环境搭建会写的有些粗略,如有疑问,可阅读上一篇V0.6版 ...

  9. vs2012+qt5.2.0环境搭建/vs2013 + qt5.3.2 环境搭建

    分类: Windows Qt2014-01-17 00:50 15434人阅读 评论(18) 收藏 举报 此文章已作废,请参考我的新文章: vs2013 + qt5.3.2 环境搭建 ( http:/ ...

随机推荐

  1. Mustache(3)

    一.简单示例 代码: 1 function show(t) { 2 $("#content").html(t); 3 } 4 5 var view = { 6 title: 'YZ ...

  2. 猜数字游戏-python

    题目: 用python写一个猜数字的游戏,游戏规则如下: 1.由一个人随机写一个整数1-99(如:21) 2.一群小伙伴轮流猜数字,如第一个人猜一个数(如:48),则缩小范围至(1-48) 3.如第二 ...

  3. FinalShell Mac OS版,Linux版安装及教程

    该版本功能和windows版基本一样,但是主机检测和远程桌面功能由于兼容性问题暂时无法使用,以后会支持. 该版本功能和windows版基本一样,但是主机检测和远程桌面功能由于兼容性问题暂时无法使用,以 ...

  4. iphone客户端上传图片到服务器

    本文转载至 http://blog.sina.com.cn/s/blog_4c70701801012inq.html       如上采用asihttprequest类中的post方式上传就行.大致思 ...

  5. vue之v-bind:style

    <div class="collect" @click="collected=!collected"> <i class="fa f ...

  6. QL 获取当前日期,年、月、日、周、时、分、秒

    ?select GETDATE() as '当前日期', DateName(year,GetDate()) as '年', DateName(month,GetDate()) as '月', Date ...

  7. UI中各种手势的使用点击,捏合,清扫,旋转,平移,边缘移动,长按

    #import "RootViewController.h" @interface RootViewController (){    UIImageView *imageView ...

  8. junit5荟萃知识点(一):junit5的组成及安装

    1.什么是junit5? 和之前的junit版本不一样,junit5是由三个模块组成. JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage ...

  9. ehcache缓存框架简介(一)

    EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider. 我们使用EhCache缓存框架主要是为了判断重复Url,每次爬取一个网 ...

  10. 编译java-cef

    javacef即java Chromium Embedded Framework,其功能是通过在java应用中嵌入谷歌浏览器内核Chromium. 编译java-cef的过程可参考以下文档及视频: h ...