You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行composer-rest-server命令遇Connection未就绪错误求助

Fixing "Connection is not in the READY state" Error When Starting Composer REST Server

我之前帮不少开发者解决过这个Hyperledger Composer REST服务器启动的问题,这个Connection is not in the READY state错误本质上是Composer的连接器无法和Fabric网络的通道事件Hub建立有效连接,下面是几个经过验证的解决步骤:

  • 先确认Fabric网络完全正常运行
    这个错误最常见的原因是Fabric的peer、orderer等核心容器没有完全启动或者运行异常。

    • 运行以下命令检查所有Fabric容器状态:
      docker ps
      
      确保所有容器(比如hyperledger/fabric-orderer、hyperledger/fabric-peer、hyperledger/fabric-ca、couchdb)都处于Up状态,没有退出或重启的记录。
    • 如果有容器异常退出,查看容器日志定位问题:
      docker logs <container-name-or-id>
      
      修复问题后,先停止Fabric网络,再重新启动:
      ./stopFabric.sh
      ./startFabric.sh
      
      之后别忘了重新创建并导入你的业务网络卡片。
  • 验证业务网络卡片的有效性
    无效或配置错误的卡片会导致连接失败:

    • 先列出所有已有的卡片:
      composer card list
      
    • 用composer ping测试目标卡片的连接状态:
      composer ping -c <your-card-name>
      
      如果ping失败,说明卡片有问题,先删除旧卡片:
      composer card delete -c <your-card-name>
      
      然后重新生成并导入正确的卡片,确保卡片中的连接配置指向正确的Fabric节点,证书路径没有错误。
  • 检查Composer与Fabric的版本兼容性
    Hyperledger Composer和Fabric有严格的版本对应关系,版本不匹配会引发各种连接问题:

    • 查看当前Composer版本:
      composer -v
      
    • 查看Fabric peer版本:
      docker images | grep hyperledger/fabric-peer
      
      比如Composer v0.20.x需要搭配Fabric v1.3.x,v0.19.x对应Fabric v1.2.x。如果版本不匹配,升级或降级对应组件到兼容版本。
  • 清理缓存并重启REST服务器
    残留的Node进程或缓存可能导致异常:

    • 先杀掉所有相关的Node进程:
      pkill node
      
    • 清除npm缓存:
      npm cache clean --force
      
    • 重新运行composer-rest-server,选择正确的业务网络卡片。
  • 检查通道事件Hub的配置
    有时候是事件监听端口未开放或配置错误:

    • 打开你的业务网络连接配置文件(connection.json),确认eventHubURL指向正确的peer节点事件端口(默认是7053),并且该端口没有被防火墙或其他服务占用。

内容的提问来源于stack exchange,提问作者Rohan Khanna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:08:24