一、准备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. 结构体成员管理AVClass AVOption之2AVOption,设置选项值

    AVOption用于在FFmpeg中描述结构体中的成员变量.一个AVOption可以包含名称,简短的帮助信息,取值等. 上篇文章中概括了AVClass,AVOption和目标结构体之间的关系.以AVF ...

  2. Div+CSS布局入门教程

    http://www.blueidea.com/tech/site/2006/3574.asp ———————————————————————————————————————————————————— ...

  3. Photoshop脚本之创建文件夹

    function checkFolder(path){ var folder = Folder(path) if(!folder.exists) folder.create() }

  4. python 模块中__all__作用

    test.py文件开头写上__all__=[func1,func2] 当其他文件导入  from test import * 只会导出"[func1,func2]"里面的,其他调用 ...

  5. C和MATLAB中:同时对多个变量连续赋值

    C语言中绝对不可以连续赋值!!!这是C语言的基本要求. 可以int a,b,c; a=5;b=5;c=5; 或者int a =5;int b=5;int c=5; 但是! 绝对不可以:int a=b= ...

  6. node c++ addon注意事项

    The module_name needs to match the filename of the final binary (minus the .node suffix).

  7. python 线程(thread)

    #coding:utf-8#多线程#Python的标准库提供了两个模块:thread和threading,thread是低级模块,threading是高级模块,对thread进行了封装 #绝大数情况下 ...

  8. IOS 多线程的一些总结

    IOS 多线程 有三种主要方法 (1)NSThread (2)NSOperation (3)**   下面简单介绍这三个方法 1.NSThread 调用方法如下:         如函数需要输入参数, ...

  9. node.js调用函数

    首先EditPlus编辑器,打开新建的文本文档,另存为副本 调用函数分为调用本地函数,和其他文件的函数 1.调用本地函数 var http = require('http'); http.create ...

  10. HTML学习笔记——标准网页设计+使用CSS、Javascript

    一.标准网页设计 1.标准网页概述: 标准网页设计要遵循,内容与表现相分离.   内容 + 表现 = 页面  ---  即 :XHTML + CSS = PAGE 内容与变现相分离,也就是内容使用HT ...