peer channel create命令解析

peer channel create命令解析

我们以fabric/example/e2e_cli为例

e2e_cli目录下中script/script.sh文件,createChannel函数中,

创建channel语句为:

peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA >&log.txt

该命令执行过程:

  1. 发送消息,创建了channel,名字为$CHANNEL_NAME

  2. 获取创世区块,并且用protobuf进行序列化,本地生成了一个文件$CHANNEL_NAME.block

变量

变量名含义
$CHANNEL_NAME采用的是默认,为mychannel
$CORE_PEER_TLS_ENABLED/e2e_cli/base/peer-base.yaml中定义的环境变量,为true<br>- CORE_PEER_TLS_ENABLED=true
$ORDERER_CAorderer的证书<br>ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem<br>- ./crypto-config:/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/<br>目录在e2e_cli/crypto-config目录下

参数

查看fabric文档Commands Reference部分

参数名含义
-o连接的orderer的地址,hostname:port
-cchannel的名称,默认为mychannel
-f配置的交易信息(暂时还没搞清楚)
--tls和orderer通信时是否启用tls
--cafile使用tls时,所使用的orderer的证书

问题

orderer.example.com域名是如何解析的?

docker-compose本身就支持通过servicename进行访问。

参考:Networking in Compose

channel.tx

由工具configtxgen生成channel.tx

在e2e_cli例子中,e2e_cli/generateArtifacts.sh文件中

$CONFIGTXGEN -profile TwoOrgsChannel -outputCreateChannelTx ./channel-artifacts/channel.tx -channelID $CHANNEL_NAME

configtxgen根据配置文件configtx.yaml中的配置项**TwoOrgsChannel**来进行生成

查看channel.tx和genesis.block内容

对于channel.tx,可以通过工具configtxgen查看json格式数据

configtxgen -inspectChannelCreateTx channel.tx

对于genesis.block,可以通过工具configtxgen查看json格式数据

configtxgen -inspectBlock genesis.block

转载于:https://my.oschina.net/u/2476019/blog/1939072

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值