переменные одноранговых сетей - PullRequest
0 голосов
/ 09 мая 2018

Я успешно запустил первую сеть, она состоит из 4 пиров, по 2 на каждую организацию. Используя docker exec cli, я могу отправлять только команды на peer0.org1.example.com. Вопрос в том, как я могу отправлять звонки например на peer0.or2.example.com? В документах сказано:

Чтобы следующие команды CLI для peer0.org1.example.com работали, нам нужно предварять наши команды четырьмя переменными среды, приведенными ниже. Эти переменные для peer0.org1.example.com запекаются в контейнере CLI, поэтому мы можем работать без их передачи. ОДНАКО, если вы хотите отправлять вызовы другим партнерам или заказчику, вам нужно будет указать эти значения соответственно. Проверьте docker-compose-base.yaml на наличие конкретных путей:

CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/Admin@org1.example.com/msp

CORE_PEER_ADDRESS = peer0.org1.example.com: 7051

CORE_PEER_LOCALMSPID = "Org1MSP"

CORE_PEER_TLS_ROOTCERT_FILE = / Opt / gopath / SRC / github.com / hyperledger / ткань / равный / криптография / peerOrganizations / org1.example.com / сверстники / peer0.org1.example.com / TLS / ca.crt

Поэтому, когда я изменяю эти переменные, например, для CORE_PEER_LOCALMSPID = "Org2MSP" и т. Д., Ничего не меняется, потому что, когда я делаю docker exec it cli bash, а затем в докере как равноправный echo $CORE_PEER_LOCALMSPID, он по-прежнему говорит Org1Msp

Ответы [ 2 ]

0 голосов
/ 23 июня 2019

В качестве альтернативы, вы можете иметь cli, соответствующий каждому пиру (хотя слишком много в файле yaml compose) и запускать его для выполнения любой команды.

0 голосов
/ 10 мая 2018

Из вашего объяснения кажется, что вы устанавливаете переменные среды перед тем, как войти в контейнер cli. Это не будет работать, так как когда вы входите в контейнер cli, он сбрасывает переменные среды обратно на те, которые вы установили в вашем файле compose, и я предполагаю, что вы загрузились до peer0 org1.

Сначала вы должны войти в контейнер cli и установить переменные в этой среде. После этого, если вы откликнетесь, вы увидите изменения. Снова, если вы затем выйдете и введете его снова, все переменные будут сброшены до загрузочных.

Другой вариант - изменить переменные в файле compose или использовать другой контейнер cli, который загружается в другой узел / организацию.

...