我正进入(状态
在 HF 中实例化链码。我遵循了安装二进制文件、图像等的正确步骤。
安装后,我在 first-network 目录中使用以下命令来安装和实例化链码:
./byfn.sh generate
./byfn.sh up
docker exec -it cli bash
peer chaincode install -n fabcar -v 1.0 -p github.com/chaincode/fabcar/javascript -l node
在执行最后一个命令时,这是我得到的输出:
2019-03-28 09:22:04.047 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 001 Using default escc
2019-03-28 09:22:04.048 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default vscc
2019-03-28 09:22:04.950 UTC [chaincodeCmd] install -> INFO 003 Installed remotely response:<status:200 payload:"OK" >
然后我使用命令来实例化链码,即:
peer chaincode instantiate -n fabcar -v 1.0 -C mychannel -c '{"Args":[]}' -l node
输出是这样的错误:
2019-03-28 09:23:25.743 UTC [chaincodeCmd] InitCmdFactory -> INFO 001 Retrieved channel (mychannel) orderer endpoint: orderer.example.com:7050
2019-03-28 09:23:25.747 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 002 Using default escc
2019-03-28 09:23:25.747 UTC [chaincodeCmd] checkChaincodeCmdParams -> INFO 003 Using default vscc
Error: could not send: EOF
我想我错过了一些东西,但我不确定。
谁能告诉我哪里出错了。提前致谢。
最佳答案
我发现将 TLS 证书选项添加到实例化命令对我有用。我使用 Golang 作为我的链码语言
安装:(供引用)
peer chaincode install \
-n mycc \
-v 1.0 \
-p myorg/chaincode
实例化:
peer chaincode instantiate \
-C mychannel \
-n mycc \
-v 1.0 \
-c '{"Args":["wallet","123"]}' \
--tls true \
--cafile /myorg/hyperledger/fabric/peer/crypto-config/ordererOrganizations/myorg.org/orderers/orderer.myorg.org/msp/tlscacerts/tlsca.myorg.org-cert.pem
我不必指定以下选项,尽管包括它们并没有破坏任何东西:
-P "OR ('MYORGMSP.peer')" \
-l golang \
我更改了 CLI 容器以将我的加密 Material 安装在
/myorg/hyperledger/fabric/peer/crypto-config
上,这与其他示例使用的默认位置不同。关于hyperledger-fabric - 错误 : could not send: EOF on instantiating chaincode,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55394476/