5 回答

TA貢獻1891條經驗 獲得超3個贊
我通過簡單地更改鏈代碼的名稱解決了這個問題。
root@c442cc2748e7:/opt/gopath/src/github.com/hyperledger/fabric/peer# peer 鏈碼實例化 -o orderer.example.com:7050 --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C $CHANNEL_NAME -n mycc -l golang -v 1.0 -c '{"Args":[]}' -P "AND ('Org1MSP.peer','Org2MSP.peer')"
只需將 -n mycc 更改為 -n 給任何你想要的名字

TA貢獻1809條經驗 獲得超8個贊
我在使用ubuntu 18.04 和hyperledger fabric 1.4.1java chaincode
安裝設置時遇到了同樣的問題。但是我已經按照以下過程解決了它。first-network
在build.gradle
我的依賴是
編譯組:'org.hyperledger.fabric-chaincode-java',名稱:'fabric-chaincode-shim',版本:'1.x'
我改成了
編譯組:'org.hyperledger.fabric-chaincode-java',名稱:'fabric-chaincode-shim',版本:'1.4.1'

TA貢獻1785條經驗 獲得超4個贊
我遇到了同樣的問題。該問題基本上表明對等進程無法從鏈代碼映像注冊/創建容器。您可以通過一個簡單的docker ps -a
.?此外,在實例化時,對等方下載fabric-ccenv
包含用于構建鏈代碼所需庫的圖像。在我的例子中,fabric-ccenv
正在下載一個舊圖像。正是這種差異導致鏈代碼容器以0
狀態代碼退出。我fabric-ccenv
使用用于 peer 的相同標簽更新了 docker 鏡像并解決了錯誤。此外,這可能發生在錯誤設置的情況下CORE_PEER_CHAINCODELISTENADDRESS
。它應該設置為0.0.0.0:7052
。

TA貢獻1824條經驗 獲得超5個贊
解決方案
移除dev-*
容器并重試。
docker images ... dev-peer0.org1.example.com-fabcar-1.0-93f09... ... docker rmi $(docker images dev-* -q)
解釋
lscc
為鏈代碼創建一個 docker 鏡像。一旦這個圖像存在,它將在未來重用它。如果圖像不好,您必須刪除它,然后再嘗試實例化。我相信這就是為什么這么多“重命名”解決方案起作用的原因,它會導致創建一個新圖像(使用不同的名稱),因為 docker 圖像名稱的名稱和版本。
故障排除
為了確定鏈代碼啟動失敗的原因,您可以連接到 cli 容器并嘗試手動運行鏈代碼。例如,nodejs 鏈代碼可能如下所示:
docker exec -it cli /bin/bash #$ cd chaincode #$ npm start # <some npm error here>
另一種選擇是打開對等點的日志記錄并重試??梢酝ㄟ^環境變量打開對等日志記錄FABRIC_LOGGING_SPEC
。我會設置為debug
orinfo
然后再試一次。日志可以通過檢查
docker logs peer0.org1.example.com
歸根結底,該錯誤意味著lscc
鏈代碼無法啟動您的鏈代碼。

TA貢獻1850條經驗 獲得超11個贊
哦,我已經修好了!它是由 docker compose .yaml 文件引起的。我更改了目錄的名稱,但沒有更新此文件中的“網絡”。與目錄名保持一致后,現在沒有錯誤了。
- 5 回答
- 0 關注
- 284 瀏覽
添加回答
舉報