我有一些关于HF CLI docker容器和一些CLI命令的问题。
首先,有人可以在docker容器的上下文中解释此容器的用途,该容器与HF生态系统所需的其他docker容器一起启动。我怎样才能查询我的业务网络组织,不同的同行以及这些同行的链代码状态?
其次,当我安装发布peer chaincode install
CLI命令的链代码时,安装了该代码的对等方(如果我有5个对等方连接到org1.example.com组织,那么上述对等命令将会安装目标链代码??
第三,如果我的业务网络规范中只有一个组织处理多个对等体和通道,当我尝试实例化安装的代码发出peer chaincode instantiate
命令时,如何指定认可策略({ {3}})在-P参数之后只有一个组织在认可表达中?
感谢您的帮助!
编辑1: 关于第3个答案的一个更新。在实例化链代码时,您有一个组织维护对等方和通道,您可以省略支持策略参数(-p)。在这种情况下,如果任何同行认可,交易将被认可
答案 0 :(得分:10)
很多很棒的问题。
“cli”容器的目的是将对等进程作为CLI运行。同一个进程既是客户端又是服务器,这有点令人困惑,我们可能会改变它。基本上,当您运行peer chaincode
命令时,您正在运行CLI。 peer node
命令是服务器命令。我们示例中的cli容器运行一个脚本(scripts/script.sh
),该脚本依次对对等节点执行一系列CLI命令。
如果您检查scripts/script.sh
,您会发现setGlobals
函数设置了一些环境变量,包括CORE_PEER_ADDRESS
。这是对等体(CLI)在安装链码时将与之通信的对等体(服务器)。
实际上,经过进一步的研究,不幸的是,这是不可能的。门语法尚未实现。您需要为此模拟多个组织。
答案 1 :(得分:0)
再问这个问题的第二部分。
进入CLI
docker exec -it cli bash
CLI的引导对等端是peer0.org1.example.com
检查您所在的PEER:
echo $CORE_PEER_ADDRESS
返回
peer0.org1.example.com:7051
更改为peer1.org1:
export CORE_PEER_ADDRESS=peer1.org1.example.com:8051
也适用于LOCALMSPID,MSPCONFIGPATH等