文档章节

hyperledger-fabric+docker安装体验

fangYC
 fangYC
发布于 2017/07/28 14:32
字数 890
阅读 499
收藏 2

参考:http://hyperledger-fabric.readthedocs.io/en/latest/samples.html

1、安装了vmware和ubuntu虚拟客户机笔者环境为ubuntu16.04.2 LTS和vm12.5.7

////2、将用户加入root组并重启 usermod -aG root <username> 这是无法获得root权限的,只是加入了root组而已 2、一般linux中非root名字用户无法获得root权限,只能加入sudo用户组,以使用sudo命令行使root权限 usermod -aG sudo <username> 然后重启

3、安装go环境,环境变量配置好后重启 参考:http://www.cnblogs.com/auh2010006/p/6343231.html

4、更新ubuntu的源,使用了阿里云的源 参考:http://www.jb51.net/article/110521.htm #笔者个人觉得这个源比较新,根据个人选择

5、安装curl工具 apt install curl

6、安装docker curl -sSL https://get.docker.com/ | sh 如果此链接不可用,那就用linux源的docker apt install docker

7、将用户加入docker组并重启 usermod -aG docker <username>

8、docker run hello-world启动hello-world测试docker是否安装成功,效果是,没找到镜像但是会自动去pull下那个镜像

9、安装docker-compose,要求最好1.8 apt install docker-compose

10、安装nodejs apt install nodejs

11、安装npm apt install npm

12、为了启动docker后,就可以远程访问,需要修改docker服务配置,文件位于/etc/default/docker: # Use DOCKER_OPTS to modify the daemon startup options. #DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4" DOCKER_OPTS="-H=unix:///var/run/docker.sock -H=0.0.0.0:2375" 然后重启docker服务 service docker restart

13、 curl -sSL https://goo.gl/iX9dek | bash下载fabric的一些工具和脚本并且自动下载镜像和修改tag这样就省略了后面16步了 #这是个国外链接,需要翻墙,如果找到一个fabric包解压使用,需要第16步

 curl -sSL https://raw.githubusercontent.com/hyperledger/fabric/master/scripts/bootstrap-1.0.0-rc1.sh | bash这个链接不需要翻墙

14、配置fabric环境变量并重启 #可以不配置环境变量但是bin目录要放在第15步的第一层文件夹内,因为byfn.sh脚本有设置变量

15、git clone https://github.com/hyperledger/fabric-samples.git下载一个fabric例子和脚本用于搭建fabric网络

16、执行fabric中bin文件的get-docker-images.sh获取镜像,会很慢,然后设置别名 命令:docker tag 镜像名:tag 新的镜像名:新的tag即latest

17、进入byfn.sh脚本目录,执行./byfn.sh -m generate( This first step generates all of the certificates and keys for all our various network entities, the genesis block used to bootstrap the ordering service, and a collection of configuration transactions required to configure a Channel. ),然后,执行./byfn.sh -m up up命令其实连带执行了generate命令了,会先判断是否已经生成证书,如果没有就会先执行generate

注:./byfn.sh -m down 这个命令是将network摧毁,会删除up过程生成的container、image和证书文件等产生物

18、网络搭建成功,用docker ps测试是否有容器运行(docker ps -a可以看到不在运行中的容器)

##开始运行测试## 安装部署chaincode:peer chaincode install -n mycc -v 1.0 -p github.com/hyperledger/fabric/examples/chaincode/go/chaincode_example02 初始化chaincode:peer chaincode instantiate -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n mycc -v 1.0 -c '{"Args":["init","a", "100", "b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" 进入cli容器:docker exec -it cli bash 产生一笔交易:peer chaincode invoke -o orderer.example.com:7050 --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem -C <channer_name> -n mycc -c '{"Args":["invoke","b","a","50"]}' 查询:peer chaincode query -C <channer_name> -n mycc -c '{"Args":["query","b"]}' 打印cli日志:docker logs -f cli 打印某个容器的日志:docker logs dev-peer0.org2.example.com-mycc-1.0 【其他需要的命令参考本文开头的参考链接】

DONE

© 著作权归作者所有

共有 人打赏支持
fangYC
粉丝 0
博文 11
码字总数 10485
作品 0
揭阳
程序员
区块链入门学习网址大全

区块链学习网址 官网: 官网文档: docker入门教程: 区块链技术指南: 超能云区块链: 超能云免费主机: Hyperledger fablic源码: Hyperledger fablic 0.6: Hyperledger fablic 1.0: Hy...

zhaoliang1131
2017/01/24
0
0
Hyperledger Fabric 客户端开发一

前面介绍了hyperledger Fabric 安装, Chaincode的开发和运维, 现在来说说hyperledger fabric的客户端相关的开发。hyperledger 的客户端开发, 实际上指的是Chaincode的客户端开发。 同传统...

十一月不远
07/23
0
0
区块链 Hyperledger - 超级账本项目在centos7环境下的安装与部署

Hyperledger - 超级账本项目在centos7环境下的安装与部署 Hyperledger 项目是开源界面向开放、标准区块链技术的首个重要探索,在 Linux 基金会的支持下,吸引了众多科技和金融巨头的参与。 ...

zhaoliang1131
2017/01/17
0
0
区块链应用,成就不一样的保险行业

当发生一起轻微交通事故的时候, 往往最令我们头疼的 是要与保险公司、清查人员和其他驾驶员交涉。 因为这样会花费我们大量的时间和精力。 即使事情进展得相对顺利, 仍然会严重打乱我们的日...

IBMdW
04/19
0
0
使用 Hyperledger Composer 创建强大的区块链查询

使用 Hyperledger Composer 创建强大的区块链查询 原生查询语言和 REST API 让查询业务网络的分布式账本变得很轻松 Paul O'Mahoney 和Fenglian Xu 2017 年 12 月 12 日发布 快速开发您的第一...

Paul O'Mahoney
2017/12/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

jquery创建类似于java的map

var map = {}; // Map map = new HashMap(); map[key] = value; // map.put(key, value); var value = map[key]; // Object value = map.get(key); var has = key in map; // boolean has = ......

SuperDabai
34分钟前
0
0
java大数据转换16进制转10进制

public static void main(String[] args) {String hex = "0xdbf3accc683297cf0000";BigInteger amount = new BigInteger(hex.substring(2), 16);System.out.println(amount);......

任梁荣
昨天
2
0
OSChina 周六乱弹 —— 目测我们程序员丁克的几率不大

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @真Skr小机灵鬼儿:8.13分享Jocelyn Pook/Russian Red的单曲《Loving Strangers》 《Loving Strangers》- Jocelyn Pook/Russian Red 手机党少...

小小编辑
昨天
9
3
TypeScript基础入门 - 函数 - 剩余参数

转载 TypeScript基础入门 - 函数 - 剩余参数 项目实践仓库 https://github.com/durban89/typescript_demo.gittag: 1.2.1 为了保证后面的学习演示需要安装下ts-node,这样后面的每个操作都能...

durban
昨天
1
0
OpenCV边缘检测算子原理总结及实现

1. 拉普拉斯算子 原理:是一种基于图像导数运算的高通线性滤波器。它通过二阶导数来度量图像函数的曲率。 拉普拉斯算子是最简单的各向同性微分算子,它具有旋转不变性。一个二维图像函数的拉...

漫步当下
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部