После установки через жизненный цикл однорангового узла цепной код не обнаружен - PullRequest
0 голосов
/ 09 июля 2020

Я следую инструкциям из fabri c -sample / test-network, но пытаюсь воспроизвести шаги управления в контейнере docker. Все шаги установки цепного кода прошли успешно, кроме одного из последних - peer chaincode invoke.

На этом этапе я получил ошибку: 2020-07-09 10:40:00.755 UTC [chaincodeCmd] chaincodeInvokeOrQuery -> DEBU 05a ESCC invoke result: response:<status:500 message:"make sure the chaincode fabcar has been successfully defined on channel appchannel and try again: chaincode definition for 'fabcar' exists, but chaincode is not installed" > Error: endorsement failure during invoke. response: status:500 message:"make sure the chaincode fabcar has been successfully defined on channel appchannel and try again: chaincode definition for 'fabcar' exists, but chaincode is not installed"

Когда я проверяю цепной код с помощью peer lifecycle chaincode queryinstalled, я получаю нормальный ответ: Installed chaincodes on peer: Package ID: fabcar_1:644530ed4e097a65073d6e0fc8a7aaa9282945e55aa1ec7d2014746fd598f631, Label: fabcar_1

Но когда я проверяю цепной код с помощью peer chaincode list --installed, я получаю пустой набор: Get installed chaincodes on peer:

configtx.yaml используется из тестового примера.

Где моя ошибка?

Вот мой Dockerfile. Основная идея состоит в том, чтобы создать самодостаточную docker среду гиперледжер с потребностями аутскрипта.

Ответы [ 2 ]

0 голосов
/ 10 июля 2020

Как упоминалось @HoaiNam, вы должны использовать fabricv2.x api, так как вы используете test-network. Также вы можете попробовать предыдущую команду, добавив v1.4.x возможностей (не уверен). для понимания новейшего процесса жизненного цикла CC вы можете обратиться к здесь . для команд вы можете обратиться к test-network/scripts/deployCC.sh. Надеюсь, это поможет.

0 голосов
/ 10 июля 2020

Команда peer chaincode ... использует LS CC - Lifecycle System Chaincode, который используется для сети 1.x Fabri c. Документы 2.x об этом здесь

Вы можете попробовать использовать команду старого стиля для установки цепного кода peer chaincode install ..., затем вы можете запросить установленный цепочный код с помощью peer chaincode list --installed. Но начиная с версии 2.0 рекомендуется использовать новый цепной код жизненного цикла.

Я также нашел практическое сравнение цепного кода версии 1.4 и 2.0 здесь . Надеюсь, это даст вам некоторые идеи.

...