用于Hyperledger Fabric V1.0网络设置的yaml文件中的Couchdb端口映射

问题描述 投票:0回答:1

有人可以解释这个docker-compose-couch.yaml中的端口映射。

请查看以下内容

container_name:couchdb0 -ports: - “5984:5984” - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS = couchdb0:5984

container_name:couchdb1 -ports: - “6984:5984” - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS = couchdb1:5984

container_name:couchdb2 -ports: - “7984:5984” - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS = couchdb2:5984

container_name:couchdb3 -ports: - “8984:5984” - CORE_LEDGER_STATE_COUCHDBCONFIG_COUCHDBADDRESS = couchdb3:5984

  1. 这里为什么所有的地址映射到同一个端口5984?是使用相同的DB而不是为每个对等使用单独的DB?

在进行交易之后,当我使用以下URL使用Fauxton UI检查数据库时

http://192.168.99.100:5984/_utils/#/database/mydemochannel/_all_docs http://192.168.99.100:6984/_utils/#/database/mydemochannel/_all_docs http://192.168.99.100:7984/_utils/#/database/mydemochannel/_all_docs http://192.168.99.100:8984/_utils/#/database/mydemochannel/_all_docs (192.168.99.100是我在Windows 7机器上的虚拟机IP)

都显示相同的数据。

  1. 我的疑问是,它在Fauxton UI中显示加密数据或纯文本值?勾选“包含文档”复选框后,它也会显示该值。根据我的理解,值将根据同伴签名加密(如果我错了请纠正我),那么它是如何显示纯文本jason的值?
couchdb blockchain hyperledger-fabric hyperledger fauxton
1个回答
1
投票

5984是沙发数据库端口号,现在来自docker-compose-couchdb.yaml文件的端口映射只是定义了从docker容器到docker主机的映射。由于有4个couchdb容器(每个对等一个),因此无法在同一端口号上映射所有这些容器,因此每个定义的不同映射分别为:5984,6984,7984和8984。所以它不是映射到同一个端口,而是从同一个端口映射到不同的端口。请参考docker撰写docs here

从Hyperledger Fabric v1.0开始,状态db中没有值的加密,如果您想继续并加密数据,您可以在应用程序级别执行此操作。例如,客户端可以通过提议的瞬态映射字段传递AES密钥,链代码将基于该密钥对params进行编码,执行链代码业务逻辑,将结果解码并存储起来。

© www.soinside.com 2019 - 2024. All rights reserved.