configtx.yaml允许设置MSPDir。下面的示例:
Organizations:
- &ord
Name: ord
# ID to load the MSP definition as
ID: ordMSP
# MSPDir is the filesystem path which contains the MSP configuration
MSPDir: /data/orgs/ord/msp
,但是在启动订购者或对等方时,也可以定义环境变量ORDERER_GENERAL_LOCALMSPDIR,例如完成此操作。 here。
这两种方式设置相同的东西不是吗?哪个胜过另一个?假设yaml文件中的MSPDir设置为A,而ORDERER_GENERAL_LOCALMSPDIR设置为B,在这种情况下会发生什么?
答案 0 :(得分:0)
环境变量override配置文件中的属性(在本例中为orderer.yaml,在对等情况下为core.yaml)。您可以在docker-compose文件中看到其工作方式的示例,容器内部已将FABRIC_CFG_PATH设置为orderer.yaml目录,但环境变量覆盖了配置文件。
答案 1 :(得分:0)
此问题的正确答案是ORDERER_GENERAL_LOCALMSPDIR正在定义本地MSP,而configtx.yaml正在定义通道MSP。
orderer.yaml中的ORDERER_GENERAL_LOCALMSPDIR包含订购者的身份。 configtx.yaml
包含所有参与者的MSP目录
网络。这些身份存储在genesis block中,从那里开始,提交交易的任何人都可以按照上述here的方式对其身份进行验证和认证。
第二,我们指向每个MSP目录的位置 成员,进而允许我们存储每个证书的根证书 组织者创始块中的组织。这是一个关键的概念。现在任何 与订购服务通信的网络实体可以具有 数字签名已验证。