fabric 启动peer_fabric网络环境启动过程详解

作者:Tiny熊

来源:区块链兄弟

原文链接:http://t.cn/ELoD2h2

本文约1700字+,阅读(观看)需要10分钟

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

这篇文章对fabric的网络环境启动过程进行讲解,也就是我们上节讲到的启动测试fabric网络环境时运行network_setup.sh这个文件的执行流程

fabric网络环境启动过程详解

上一节我们讲到 fabric网络环境的启动测试,主要是使用 ./network_setup.sh up 这个命令,所以fabric网络环境启动的重点就在network_setup.sh这个文件中。接下来我们就分析一下network_setup.sh这个文件

network_setup.sh其中包括两个部分,一个是利用generateArtifacts.sh脚本文件配置组织关系和颁发证书、公/私钥、通道证书等,另一个是docker-compose-cli.yaml用于根据配置启动集群并测试chaincode的示例代码。下面是具体的流程图介绍:

6a4f4521d179da2863dad754282affe1.png

首先看下generateArtifacts.sh脚本文件,它包含三个函数,分别是:

1.generateCerts:

该函数使用cryptogen工具根据crypto-config.yaml来生成公私钥和证书信息等。

2.replacePrivateKey:

将docker-compose-e2e-template.yaml文档中的ca私钥替换成具体的私钥。

3.generateChannelArtifacts:

使用configtxgen工具根据configtx.yaml文件来生成创世区块和通道相关信息,更新锚节点。

接着是docker-compose-cli.yaml文件** docker-compose-cli.yaml文件根据组织关系启动docker集群,并在cli容器中执行command命令运行./scripts/script.sh脚本文件。 那./scripts/script.sh脚本具体做了什么呢?

创建channel

  1. joinChannel:将每个peer节点加入channel。
  2. updateAnchorPeers:更新锚节点
  3. installChaincode:部署chaincode。
  4. instantiateChaincode:初始化chaincode。
  5. chaincodeQuery:chaincode查询

另外docker-compose-cli.yaml这个文件还有一个配置项是需要注意的地方,那就是:

file: base/docker-compose-base.yaml

这里的docker-compose-base.yaml其实就是Orderer和peer的基础配置文件,包括指定端口等。### 几个重要的配置文件#### 1.crypto-config.yaml基于crypto-config.yaml(此文件在../fabric/examples/e2e_cli中)**生成公、私钥和证书信息,并保存在crypto-config文件夹中**。

另外crypto-config.yaml还定义了组织成员以及组织下的peer节点个数。**crypto-config.yaml文件讲解:**字段Name和Domain就是关于这个组织的名字和域名,这主要是用于生成证书的时候,证书内会包含该信息。

而Template.Count=2是说我们要生成2套公私钥和证书,一套是peer0.org1的,还有一套是peer1.org1的(也就指定了org中存在peer0和peer1两个节点)。最后Users.Count=1是说每个Template下面会有几个普通User(注意,Admin是Admin,不包含在这个计数中),这里配置了1,也就是说我们只需要一个普通用户User1@org1.example.com 我们可以根据实际需要调整这个配置文件,增删Org Users等。

文章发布只为分享区块链技术内容,版权归原作者所有,观点仅代表作者本人。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值