Hyperledger Fabric 1.0 从零开始(一)
在HyperLedger/Fabric发布0.6的时候,公司就已经安排了一个团队研究这一块,后来也请IBM的专家组过来培训了一批人,不幸的是,这批人后来全走了,然后1.0就发布了。自从2017年7月HyperLedger/Fabric发布了1.0正式版后(可以参考:Hyperledger Fabric 1.0发布:基于区块链的开源分布式账本),公司领导就更加关注这个领域,就安排我一个人来接手,培训的机会也没有了。我主要是做Android和iOS方向的开发,也做java后台服务开发,对zookeeper和kafka这些服务组件了解不是很深入。接手后就开始按照已离职那批人留下的文档一行一行的敲和调试,其实就是copy代码到linux命令行里面,最后看到一个跑通的提示信息,然后也不知道是什么原理,就有个可用的restful服务,能够实现deploy、invoke和query等操作,当时是用了一台服务器做的,我本以为这就搞定了,就好比tomcat里放个war包一样简单,但Fabric真没有想象中那么简单。
HyperLedger/Fabric1.0版本,相比较于0.6版本不仅性能上有了大幅的调优(Hyperledger Fabric1.0架构概览,主要是架构上的调整更加友好),在实际搭建和使用的方法上更是有了巨大的变化,尤其是restful方案已经被废弃(参考这个:Remove deprecated devops REST API)。
截止今天,笔者的Fabric项目基本已经完成整体搭建,所以就抽空来开个博客,写写这方面的内容,希望能够帮助那些从零开始的朋友们。
后面也会分篇来介绍如何一步一步从零开始做这个项目。
整体篇章具体会包含如下内容:
目录
1:环境构建
2:Fabric源码及镜像文件处理
3:运行测试e2e
4:创建Fabric多节点集群
5:启动Fabric多节点集群
6:Fabric多节点集群生产部署
7:Fabric多节点集群生产启动
8:智能合约
9:CouchDB
10:CA
11:fabric-sdk-java应用
12:orderer分布式方案
13:Hyperledger Fabric问题小节
上述目录是笔者最近在做这个项目的时候一步一步记录下来的操作路径,主要也是担心自己会忘记流程,最终整理成博文需要慢慢来,也算是对自己在这个项目上有个交代了。
章节目录:
Hyperledger Fabric 1.0 从零开始(一)
Hyperledger Fabric 1.0 从零开始(二)——环境构建(公网)
Hyperledger Fabric 1.0 从零开始(三)——环境构建(内网/准离线)
Hyperledger Fabric 1.0 从零开始(四)——Fabric源码及镜像文件处理
Hyperledger Fabric 1.0 从零开始(五)——运行测试e2e
Hyperledger Fabric 1.0 从零开始(六)——创建Fabric多节点集群
Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群
Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群生产部署
Hyperledger Fabric 1.0 从零开始(九)——Fabric多节点集群生产启动
Hyperledger Fabric 1.0 从零开始(十)——智能合约(参阅:Hyperledger Fabric Chaincode for Operators——实操智能合约)
Hyperledger Fabric 1.0 从零开始(十一)——CouchDB(参阅:Hyperledger Fabric CouchDB as the State Database——使用CouchDB)
Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用
Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用【补充】
Hyperledger Fabric 1.0 从零开始(十三)——orderer分布式方案
Hyperledger Fabric 1.0 从零开始(十四)——Hyperledger Fabric问题小节
学习教程使用博客阅读比较友好,且一般都在PC上进行操作和验证。现在开通了个订阅号,订阅号会逐步同步博客上的所有博文,但订阅号更适合阅读文档类讲解,后续更多的也将会是文档里说明,建议关注。
微信订阅号请关注:
Hyperledger Fabric 1.0 从零开始(一)的更多相关文章
- Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群生产部署
6.1.平台特定使用的二进制文件配置 该方案与Hyperledger Fabric 1.0 从零开始(五)--运行测试e2e类似,根据企业需要,可以控制各节点的域名,及联盟链的统一域名.可以指定单独节 ...
- Hyperledger Fabric 1.0 从零开始(三)——环境构建(内网/准离线)
有公网环境的服务器可以直接看 Hyperledger Fabric 1.0 从零开始(二)--环境构建(公网) ,本篇内容与上篇相似,只不过环境搭建需要在内网下,也就是网络被限制的情况下. 1:环境构 ...
- Hyperledger Fabric 1.0 从零开始(二)——环境构建(公网)
1:环境构建 在本文中用到的宿主机环境是Centos ,版本为Centos.x86_647.2,通过Docker 容器来运行Fabric的节点,版本为v1.0.因此,启动Fabric网络中的节点需要先 ...
- Hyperledger Fabric 1.0 从零开始(一)——吐槽
在HyperLedger/Fabric发布0.6的时候,公司就已经安排了一个团队研究这一块,后来也请IBM的专家组过来培训了一批人,不幸的是,这批人后来全走了,然后没过多久1.0就发布了.自从2017 ...
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用【补充】
在 Hyperledger Fabric 1.0 从零开始(十二)--fabric-sdk-java应用 中我已经把官方sdk具体改良办法,即使用办法发出来了,所有的类及文件都是完整的,在文章的结尾也 ...
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用
Hyperledger Fabric 1.0 从零开始(十)--智能合约 Hyperledger Fabric 1.0 从零开始(十一)--CouchDB 上述两章,最近网上各路大神文章云集,方案多多 ...
- Hyperledger Fabric 1.0 从零开始(十三)——orderer分布式方案
简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群 ...
- Hyperledger Fabric 1.0 从零开始(五)——运行测试e2e
3:运行测试e2e 3.1.运行fabric-samples的问题说明 该问题说明能够解决6.1.平台特定使用的二进制文件配置第一步的问题.可以选择继续阅读该说明,或者等参考到6.1小节时再反向阅读本 ...
- Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群
5:启动Fabric多节点集群 5.1.启动orderer节点服务 上述操作完成后,此时各节点的compose配置文件及证书验证目录都已经准备完成,可以开始尝试启动多机Fabric集群. 首先启动or ...
随机推荐
- 1491. [NOI2007]社交网络【最短路计数】
Description 在社交网络(socialnetwork)的研究中,我们常常使用图论概念去解释一些社会现象.不妨看这样的一个问题. 在一个社交圈子里有n个人,人与人之间有不同程度的关系.我们将这 ...
- juquery去除字符串前后的空格
1. 去掉字符串前后所有空格: 代码如下: function Trim(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); }
- virtualbox+vagrant学习-2(command cli)-7-vagrant login命令
Login ⚠️该命令已经弃用了,别名为vagrant cloud auth login.看本博客的 格式: vagrant cloud auth login [options] 登录命令用于使用Ha ...
- 关于Koala 中文编译出错
关于koala: 我们知道koala是一个前端预处理器语言图形编译工具,支持Less.Sass.Compass.CoffeeScript,帮助web开发者更高效地使用它们进行开发.跨平台运行,完美兼容 ...
- 利用grep命令查找字符串分析log文件的一次实践
需求场景: 我需要分析一个服务器访问日志,分析百度蜘蛛这个月对求索网页面的抓取情况. 分析问题: 我的一个access.log文件大小有35M,不可能直接通过打开查看.我需要过滤掉一些没有的信息,只保 ...
- Java泛型学习二
通配符的使用 上一篇中知道,Box<Number>和Box<Integer>实际上都是Box类型,现在需要继续探讨一个问题,那么在逻辑上,类似于Box<Number> ...
- Python之括号()[]{}
Python主要有三种数据类型:字典.列表.元组.其分别由花括号,中括号,小括号表示.如:字典:dic={'a':12,'b':34}列表:list=[1,2,3,4]元组:tup=(1,2,3,4)
- Java日志框架中真的需要判断log.isDebugEnabled()吗?
在项目中我们经常可以看到这样的代码: if (logger.isDebugEnabled()) { logger.debug(message); } 简单来说,就是用isDebugEnabled方法判 ...
- 【vue】vue生命周期解读 (流程+钩子函数)
参考详细说明一波简书 (vue中钩子函数解读) 1.实例渲染流程 2.生命周期钩子函数比 钩子函数详解简书一 钩子函数详解简书二
- The Ribbon Tab with id: "Ribbon.Read" has not been made available for this page or does not exist.
The Ribbon Tab with id: "Ribbon.Read" has not been made available for this page or does no ...