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

《Spring in Action第6版》Docker Cassandra CQLSH命令遇socket.gaierror错误求助

问题描述

按照《Spring in Action(第六版)》第96页指引,在VS Code终端执行以下Docker命令:

docker network create cassandra-net
docker run --name my-cassandra --network cassandra-net -p 9042:9042 -d cassandra:latest

容器日志显示已创建默认超级用户角色'cassandra',判断Cassandra集群已完全启动。但执行命令:

docker run -it --network cassandra-net --rm cassandra cqlsh my-cassandra

时出现如下错误:

Traceback (most recent call last):
  File "/opt/cassandra/bin/cqlsh.py", line 2402, in <module>
    main(*read_options(sys.argv[1:], os.environ))
  File "/opt/cassandra/bin/cqlsh.py", line 2344, in main
    shell = Shell(hostname,
  File "/opt/cassandra/bin/cqlsh.py", line 480, in __init__
    load_balancing_policy=WhiteListRoundRobinPolicy([self.hostname]),
  File "/opt/cassandra/bin/../lib/cassandra-driver-internal-only-3.25.0.zip/cassandra-driver-3.25.0/cassandra/policies.py", line 425, in __init__
  File "/opt/cassandra/bin/../lib/cassandra-driver-internal-only-3.25.0.zip/cassandra-driver-3.25.0/cassandra/policies.py", line 426, in <listcomp>
  File "/usr/lib/python3.10/socket.py", line 955, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):        
socket.gaierror: [Errno -2] Name or service not known

搜索相关错误后找到的方案多针对GitHub托管场景,不适用于本地VS Code终端环境,请问哪里遗漏了?

解决方案
  • 确认容器归属的网络:执行docker inspect my-cassandra | grep Networks,检查输出是否包含cassandra-net,如果没有,说明容器未加入指定网络,需重新启动容器并指定该网络。
  • 用容器IP替代容器名:Docker网络内的容器名解析偶尔会出现异常,先获取容器IP:
    docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' my-cassandra
    
    再用该IP执行连接命令:
    docker run -it --network cassandra-net --rm cassandra cqlsh <获取到的容器IP>
    
  • 确认Cassandra完全启动:日志显示创建超级用户不代表服务完全就绪,查看容器日志末尾是否有Ready for connections类输出,等待1-2分钟后再尝试连接。
  • 直接进入容器内部执行cqlsh:跳过跨容器网络解析问题,执行:
    docker exec -it my-cassandra cqlsh
    
  • 宿主机直接连接:如果本地安装了cqlsh,利用映射的9042端口直接连接:
    cqlsh localhost 9042 -u cassandra -p cassandra
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 07:45:27