![](/img/trans.png)
[英]Understanding Docker Container Internals in Hyperledger Fabric
[英]Hyperledger Fabric: Understanding Docker Containers
我一直在遵循使用本地主机上部署的Docker容器构建您的第一个网络教程。 但是,我不确定容器中的某些文件,需要澄清。
在目录/var/hyperledger/production/chaincodes
,有一个文件mycc.1.0
,我猜是已编译。 在cli容器中运行peer chaincode install
时,是否已安装此链peer chaincode install
? mycc.1.0
是系统链码吗?
在目录/var/hyperledger/production/ledgersData
,还有许多其他目录和文件,如下所示。 我有一个大概的想法,那就是它存储了世界状态和区块链。 但是每个目录的详细信息是什么?
bookkeeper
chains
configHistory
historyLeveldb
ledgerProvider
pvtdataStore
stateLeveldb
在目录/var/hyperledger/production/transientStore
,有几个文件。
000001.log
CURRENT
LOCK
LOG
MANIFEST-000000
我还注意到,在上面第2点列出的那些目录中找到了这些文件(具有相同的名称,但不确定上下文是否相同)。 那么transientStore
和ledgersData
什么区别或关系?
在目录/var/hyperledger/orderer
,有msp
和tls
加密材料。 但是orderer.genesis.block
的目的是orderer.genesis.block
? 它只是用于引导区块链网络吗? 浏览此文件后,我发现它由证书和ACL组成。 这些材料还用于监视渠道策略以及验证交易吗?
在目录/var/hyperledger/production/orderer
。 有两个目录chains
和index
。 它们看起来与对等容器中的chains
目录非常相似。 但是我仍然不知道这些文件是什么。
以上容器的名称为peer#.org#.example.com
和orderer.example.com
。 但是当我运行docker container ls
,我发现有dev-peer#.org#.example.com-mycc-1.0
容器。 但是我不知道他们为什么在这里。
谢谢!
更新
添加的点关于3 transientStore
如图同伴容器部分(参见上文)
我注意到在base/docker-compose-base.yaml
,有一个类似/var/run/:/host/var/run/
的卷挂载。 这些文件似乎是我的本地资料,可能与超账结构无关。 为什么要挂载此卷?
/var/hyperledger/production/chaincodes
这是已安装的chaincode软件包的存储位置。
orderer.genesis.block
是orderer.genesis.block
者的引导块...它包含orderer.genesis.block
者组织的基本orderer.genesis.block
者设置和加密材料。 订购者组织可以创建财团并向其添加成员。 然后,联盟政策将规定谁可以创建渠道等。
chains
-每个通道的原始分类帐文件
这些是chaincode容器。 Fabric在Docker容器中启动chaincode。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.