文档章节

hyperledger-fabric+docker安装体验

fangYC
 fangYC
发布于 2017/07/28 14:32
字数 890
阅读 534
收藏 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
博文 12
码字总数 11571
作品 0
揭阳
程序员
区块链入门学习网址大全

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

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

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

IBMdW
04/19
0
0
在Ubuntu中部署并测试Fabric 1.0 Beta

【更新:1.0Beta已经是过去式了,现在出了1.0.0的正式版,请大家参照 http://www.cnblogs.com/studyzy/p/7437157.html 安装Fabric 1.0.0】 今天HyperLedger Fabric放出了1.0 Beta版的镜像,按...

深蓝居
2017/06/09
0
0
Hyperledger Fabric 客户端开发一

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

十一月不远
07/23
0
0
使用 Hyperledger Composer 创建强大的区块链查询

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

Paul O'Mahoney
2017/12/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

shell特殊符号、cut、sort、uniq、wc、tee、tr、split命令

10月15日任务 8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下 cut 命令 cut作用:截取字符串 用法如下:cat /etc/passwd |head -2 |cut -d ...

hhpuppy
5分钟前
0
0
Springboot实现filter拦截token验证和跨域

背景 web验证授权合法的一般分为下面几种 1使用session作为验证合法用户访问的验证方式 使用自己实现的token 使用OCA标准 在使用API接口授权验证时,token是自定义的方式实现起来不需要引入其...

funnymin
40分钟前
1
0
linux使用ntfs-3g操作ntfs格式硬盘

Linux内核目前只支持对微软NTFS文件系统的读取。 NTFS-3G 是微软 NTFS 文件系统的一个开源实现,同时支持读和写。NTFS-3G 开发者使用 FUSE 文件系统来辅助开发,同时对可移植性有益。 安装 ...

linuxprobe16
今天
1
0
kubeadm部署kubernetes集群

一、环境要求 这里使用RHEL7.5 master、etcd:192.168.10.101,主机名:master node1:192.168.10.103,主机名:node1 node2:192.168.10.104,主机名:node2 所有机子能基于主机名通信,编辑...

人在艹木中
今天
12
0
Shell特殊符号总结以及cut,sort,wc,uniq,tee,tr,split命令

特殊符号总结一 * 任意个任意字符 ? 任意一个字符 # 注释字符 \ 脱义字符 | 管道符 # #号后的备注被忽略[root@centos01 ~]# ls a.txt # 备注 a.txt[root@centos01 ~]# a=1[root@centos01...

野雪球
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部