Hyperledger Fabric1.0环境搭建
一、准备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环境搭建的更多相关文章
- Hyperledger Fabric1.4环境搭建过程
简单记录一下fabric版本1.4的环境搭建,运行环境为Ubuntu18.04,其中一些内容是根据官方文档整理的,如有错误欢迎批评指正. 本文只介绍最简单的环境搭建方法,具体的环境搭建解析在这里深入解 ...
- Hyperledger Fabric1.4环境搭建
参考文档:https://www.cnblogs.com/cbkj-xd/p/11067790.html 1. 设置下载源为阿里源 sudo vim /etc/apt/sources.list 在配置 ...
- ubantu16.04+mxnet +opencv+cuda8.0 环境搭建
ubantu16.04+mxnet +opencv+cuda8.0 环境搭建 建议:环境搭建完成之后,不要更新系统(内核) 转载请注明出处: 微微苏荷 一 我的安装环境 系统:ubuntu16.04 ...
- 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)
菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven) 2012-02-04 13:11 by 虫师, 11419 阅读, 5 评论, 收藏, 编辑 之前我就讲过一种方试来搭 ...
- XNA 4.0 环境搭建和 Hello World,Windows Phone 游戏开发
XNA 4.0 环境搭建和 Hello World,Windows Phone 游戏开发 使用 Scene 类在 XNA 中创建不同的场景(八) 摘要: 平方已经开发了一些 Windows Phone ...
- (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 ...
- [转]OPENCV3.3+CUDA9.0 环境搭建若干错误总结
编译OpenCV设计启用OpenGL三维可视化支持和启用GPU CUDA并行加速处理的基本知识: 1.从2.4.2版本开始,OpenCV在可视化窗口中支持OpenGL,这就意味着在OpenCV中可以轻 ...
- 区块链学习——HyperLedger-Fabric v1.0环境搭建详细教程
相对与v0.6版本来说,1.0版本改变较大,此处不多说,只是将小白自己搭建1.0环境的过程分享给大家.希望对大家能有所帮助! 这一篇可能对前面的环境搭建会写的有些粗略,如有疑问,可阅读上一篇V0.6版 ...
- vs2012+qt5.2.0环境搭建/vs2013 + qt5.3.2 环境搭建
分类: Windows Qt2014-01-17 00:50 15434人阅读 评论(18) 收藏 举报 此文章已作废,请参考我的新文章: vs2013 + qt5.3.2 环境搭建 ( http:/ ...
随机推荐
- 结构体成员管理AVClass AVOption之2AVOption,设置选项值
AVOption用于在FFmpeg中描述结构体中的成员变量.一个AVOption可以包含名称,简短的帮助信息,取值等. 上篇文章中概括了AVClass,AVOption和目标结构体之间的关系.以AVF ...
- Div+CSS布局入门教程
http://www.blueidea.com/tech/site/2006/3574.asp ———————————————————————————————————————————————————— ...
- Photoshop脚本之创建文件夹
function checkFolder(path){ var folder = Folder(path) if(!folder.exists) folder.create() }
- python 模块中__all__作用
test.py文件开头写上__all__=[func1,func2] 当其他文件导入 from test import * 只会导出"[func1,func2]"里面的,其他调用 ...
- 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= ...
- node c++ addon注意事项
The module_name needs to match the filename of the final binary (minus the .node suffix).
- python 线程(thread)
#coding:utf-8#多线程#Python的标准库提供了两个模块:thread和threading,thread是低级模块,threading是高级模块,对thread进行了封装 #绝大数情况下 ...
- IOS 多线程的一些总结
IOS 多线程 有三种主要方法 (1)NSThread (2)NSOperation (3)** 下面简单介绍这三个方法 1.NSThread 调用方法如下: 如函数需要输入参数, ...
- node.js调用函数
首先EditPlus编辑器,打开新建的文本文档,另存为副本 调用函数分为调用本地函数,和其他文件的函数 1.调用本地函数 var http = require('http'); http.create ...
- HTML学习笔记——标准网页设计+使用CSS、Javascript
一.标准网页设计 1.标准网页概述: 标准网页设计要遵循,内容与表现相分离. 内容 + 表现 = 页面 --- 即 :XHTML + CSS = PAGE 内容与变现相分离,也就是内容使用HT ...