Ошибка при чтении основного файла конфигурации: неподдерживаемый тип конфигурации

Я пытаюсь передать артефакт транзакции конфигурации канала заказчику с помощью команды:

peer channel create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx --tls --cafile 
/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem

Но я получаю сообщение об ошибке:

2018-03-17 20:55:21.380 GMT [main] main -> ERRO 001 Fatal error
 when initializing core config : error when reading core 
config file: Unsupported Config Type ""

Что означает эта ошибка? и как я могу это исправить?

Использование docker ps -a

CONTAINER ID        IMAGE                                                                                                    COMMAND                  CREATED             STATUS                       PORTS                                              NAMES
5c27fce33911        hyperledger/fabric-tools:latest                                                                          "/bin/bash"              3 minutes ago       Up 3 minutes                                                                    cli
aabf72f81352        hyperledger/fabric-peer:latest                                                                           "peer node start"        3 minutes ago       Up 3 minutes                 0.0.0.0:7051->7051/tcp, 0.0.0.0:7053->7053/tcp     peer0.org1.example.com
73ddcafb5ce6        hyperledger/fabric-orderer:latest                                                                        "orderer"                3 minutes ago       Up 3 minutes                 0.0.0.0:7050->7050/tcp                             orderer.example.com
205448f5479a        hyperledger/fabric-peer:latest                                                                           "peer node start"        3 minutes ago       Up 3 minutes                 0.0.0.0:8051->7051/tcp, 0.0.0.0:8053->7053/tcp     peer1.org1.example.com
4e5ba2999f54        hyperledger/fabric-peer:latest                                                                           "peer node start"        3 minutes ago       Up 3 minutes                 0.0.0.0:9051->7051/tcp, 0.0.0.0:9053->7053/tcp     peer0.org2.example.com
fcc6b25b6422        hyperledger/fabric-peer:latest                                                                           "peer node start"        3 minutes ago       Up 3 minutes                 0.0.0.0:10051->7051/tcp, 0.0.0.0:10053->7053/tcp   peer1.org2.example.com
2f1536ffe265        dev-peer0.org1.example.com-fabcar-1.0-5c906e402ed29f20260ae42283216aa75549c571e2e380f3615826365d8269ba   "chaincode -peer.add…"   24 hours ago        Exited (255) 3 minutes ago                                                      dev-peer0.org1.example.com-fabcar-1.0
6ae48101bc34        hyperledger/fabric-ca                                                                                    "sh -c 'fabric-ca-se…"   24 hours ago        Exited (255) 3 minutes ago   0.0.0.0:7054->7054/tcp                             ca.example.com
dc9e5bb3cc8e        hyperledger/fabric-couchdb                                                                               "tini -- /docker-ent…"   24 hours ago        Exited (255) 3 minutes ago   4369/tcp, 9100/tcp, 0.0.0.0:5984->5984/tcp         couchdb

это журнал orderer.example.com введите здесь описание изображения


person Sophoclis Stephanou    schedule 17.03.2018    source источник
comment
чтобы найти журналы, вы можете сначала сделать docker ps -a, а затем docker logs container id   -  person Pandit    schedule 21.03.2018
comment
Я добавил журнал orderer.example.com, а также добавил docker ps -a в конце вопроса. Надеюсь, это поможет, и извините за поздний ответ.   -  person Sophoclis Stephanou    schedule 22.03.2018
comment
Что ж, ваш ca.example.com уже не работает, и его нужно запустить.   -  person Pandit    schedule 25.03.2018
comment
как мне это исправить?   -  person Sophoclis Stephanou    schedule 25.03.2018
comment
У меня нет постоянного решения, но я убираю флаг -d при запуске док-контейнеров.   -  person Pandit    schedule 26.03.2018
comment
удаление -d просто показывает журналы   -  person Sophoclis Stephanou    schedule 28.03.2018
comment
docker-compose -f $COMPOSE_FILE -f $COMPOSE_FILE_COUCH -f $CA_FILE up   -  person Pandit    schedule 29.03.2018
comment
перейдите в папку, в которой у вас есть файлы конфигурации, и введите FABRIC_CFG_PATH=$PWD. это единственная причина 2, по которой у вас может быть этот тип ошибки. я не вижу никакой другой причины, почему есть проблема с конфигурацией. или может быть в вашем файле конфигурации есть тип.   -  person Pandit    schedule 29.03.2018
comment
Это потому, что я забыл указать переменные env? CORE_PEER_ADDRESS=peer0.org1.example.com:7051 CORE_PEER_LOCALMSPID=Org1MSP CORE_PEER_TLS_ROOTCERT_FILE=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/peers/peer0.org1.example .com/tls/ca.crt   -  person Sophoclis Stephanou    schedule 01.04.2018
comment
Хорошо, что эта ошибка была связана с отсутствием чего-то в файле конфигурации :). Рад, что вы нашли решение   -  person Pandit    schedule 02.04.2018


Ответы (4)


Вы должны находиться внутри контейнера CLI, чтобы выполнить команду peer channel create.

Вы войдете в контейнер CLI с помощью команды docker exec:

docker exec -it cli bash

В случае успеха вы должны увидеть следующее:

root@0d78bb69300d:/opt/gopath/src/github.com/hyperledger/fabric/peer#

Там вы должны запустить команду peer channel create следующим образом:

root@0d78bb69300d:/opt/gopath/src/github.com/hyperledger/fabric/peer# одноранговый канал create -o orderer.example.com:7050 -c $CHANNEL_NAME -f ./channel-artifacts/channel.tx -- tls --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/example.com/orderers/orderer.example.com/msp/tlscacerts/tlsca.example.com-cert.pem

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

person Mukesh Chapagain    schedule 21.08.2018

экспорт FABRIC_CFG_PATH=$PWD. это решит эту проблему.

person Pandit    schedule 20.03.2018
comment
Я сделал это, но, похоже, это не исправить. - person Sophoclis Stephanou; 20.03.2018
comment
не могли бы вы добавить журналы для orderer.example.com - person Pandit; 21.03.2018
comment
как найти логи? извините, я новичок в этом. - person Sophoclis Stephanou; 21.03.2018
comment
Я думаю, проблема в том, что в учебнике, где я строю свою первую сеть, я добрался до той части, где я запускаю сеть, и есть команда, которую я не делал, потому что не понимаю, как она работает: work_dir: /opt/gopath /src/github.com/hyperledger/fabric/peer - person Sophoclis Stephanou; 21.03.2018
comment
Я попытался игнорировать экспорт FABRIC_CFG_PATH=$PWD и использовать параметр командной строки -configPath ./configtx.yaml, который, похоже, должен работать. cryptogen поддерживает параметр командной строки для crypto-config.yaml - person Robert Hutto; 31.10.2018

Это ошибка, которую вы получаете, когда core.yaml не найден. Как и в случае с Mukesh, упомянутым выше, выполнение команды в контейнере CLI не приведет к возникновению ошибки.

Подробнее см. эту ссылку.

person Dylan    schedule 29.10.2018

Можете ли вы попробовать запустить эту команду: echo $FABRIC_CFG_PATH

Какое бы значение вы ни получили, можете ли вы перейти в этот каталог и убедиться, что видите там файл configtx.yaml.

Из документов здесь говорится, что ошибка результат неправильной установки значения этой переменной.

person William    schedule 27.03.2018
comment
Я экспортировал FABRIC_CFG_PATH в /c/Users/$name/fabric-samples/first-network, и configtx.yaml находится в этой папке, поэтому я не знаю, в чем может быть проблема. - person Sophoclis Stephanou; 28.03.2018