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

Docker部署Cassandra报ConnectionRefusedError连接被拒解决方法

解决方案

按以下顺序排查修复即可:

  • 修正expose配置错误。expose字段声明的是容器内部进程监听的端口,Cassandra官方镜像默认CQL客户端服务端口为9042,你当前配置写的expose: - '6000'无效,容器内无进程监听6000端口,将该值改为'9042'。
  • 对齐客户端连接端口配置。你贴的报错里同时出现了8000、6000两个端口,说明客户端连接参数存在冲突。如果保留当前6000:9042的端口映射规则(即宿主机6000端口转发到容器9042端口),必须明确指定客户端连接地址为127.0.0.1:6000,删除配置里无关的8000端口参数。
  • 等待Cassandra完全初始化。Cassandra启动初始化耗时较长(通常1-2分钟,视机器性能而定),容器刚启动时服务未就绪也会报连接拒绝。可执行docker ps确认容器处于运行状态,再通过docker logs -f <你的cassandra容器名>查看启动日志,等日志出现Starting listening for CQL clients on /0.0.0.0:9042字样时,才代表服务可正常连接。
  • 排查端口占用问题。如果配置修正、容器启动完成后仍然报错,检查宿主机6000端口是否被其他进程占用:Windows环境执行netstat -ano | findstr :6000即可查看占用进程,要么关闭占用进程,要么修改compose里的宿主机映射端口换个未被占用的端口即可。

修正后的可用docker-compose.yml参考如下:

networks:
  app-tier:
    driver: bridge

services:
  cassandra:
    image: 'cassandra:latest'
    networks:
      - app-tier
    expose:
      - '9042'
    ports:
      - '6000:9042'

如果不需要自定义宿主机端口,直接把ports配置改成'9042:9042',客户端连接默认的9042端口即可,能进一步降低端口配置出错的概率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 01:21:32