hyperledger-fabric - Hyperledger Fabric - 无法生成 orderer 创世块
问题描述
通过运行 ./byfn.sh generate 命令,我收到下面提到的错误:
INHYKPMAC01-MacBook-Pro:first-network prakriti$ ./byfn.sh generate -c PDM Generating certs and genesis block for channel 'PDM' with CLI timeout of '10' seconds and CLI delay of '3' seconds Continue? [Y/n] y proceeding ... /Users/prakriti/Hyperledger/fabric-samples/first-network/../bin/cryptogen ########################################################## ##### Generate certificates using cryptogen tool ######### ########################################################## + cryptogen generate --config=./crypto-config.yaml org1.example.com org2.example.com + res=0 + set +x /Users/prakriti/Hyperledger/fabric-samples/first-network/../bin/configtxgen ########################################################## ######### Generating Orderer Genesis block ############## ########################################################## CONSENSUS_TYPE=solo + '[' solo == solo ']' + configtxgen -profile TwoOrgsOrdererGenesis -channelID byfn-sys-channel -outputBlock ./channel-artifacts/genesis.block 2019-03-04 13:29:31.572 IST [common/configtx/tool] main -> INFO 001 Loading configuration 2019-03-04 13:29:31.588 IST [common/configtx/tool/localconfig] Load -> CRIT 002 Error reading
配置:解析配置时:yaml:第 311 行:没有找到预期的密钥 + res=1 + set +x 无法生成 orderer 创世块...
解决方案
您是否正在使用“自定义”的 configtx.yaml 文件?
文件中存在一些语法错误或文件中存在格式错误。yaml 中的精确格式很重要。
如果您正在使用标准文件 - 它可能已损坏,因此请下载新版本。
顺便说一句 - 频道名称不能包含大写字符,因此您的频道名称 PDM 无效。(我还没有测试过使用大写字母生成创世块的场景,但迟早会导致问题。)
编辑
我还会检查 configtxgen 的版本以确保它是正确的 1.4.0 版本../bin/configtxgen -version
(不是旧版本或新的 v2.0 测试版)
推荐阅读
- java - 登录后执行 ConstraintSet 后按钮不可见
- reactjs - 如何在 React 应用程序中包含 PHP 代码 - 没有 ajax
- azure - Azure DevOps 授予对管道的存储库访问权限
- java - Firebase 本身增加 Long 值
- prolog - 列出宽度为 1 的窗口
- flutter - 在 Flutter 中扩展材质组件
- javascript - 如何将 HTML 元素与 JavaScript 中的一行连接起来?
- c - 子进程池
- javascript - MediaSource 画布到带音频的视频转换
- java - 如何在linux上使用documents4j?