【问题标题】:Cannot connect to local datastax cassandra running in docker无法连接到在 docker 中运行的本地 datastax cassandra
【发布时间】:2021-01-02 13:48:15
【问题描述】:

我执行了这个 docker 命令来运行 datastax cassandra 的实例:

docker run -p 9042:9042 -e DS_LICENSE=accept --rm --name my-dse -d datastax/dse-server:6.8.2 -s

然后运行datastax studio的实例:

docker run -e DS_LICENSE=accept --link my-dse --name my-studio -p 9091:9091 -d datastax/dse-studio

当我在 http://localhost:9091 打开浏览器以创建连接时,我收到此错误:

All host(s) tried for query failed (tried: /127.0.0.1:9042 (com.datastax.driver.core.exceptions.TransportException: [/127.0.0.1:9042] Cannot connect))

我检查了在 docker 中运行的 cassandra 实例,我可以使用 cqlsh 进行连接:

$ docker exec -it my-dse bash -c "cqlsh -u cassandra -p cassandra"
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 6.8.0 | DSE 6.8.2 | CQL spec 3.4.5 | DSE protocol v2]
Use HELP for help.
cassandra@cqlsh> 

这是基于此处的说明: https://www.datastax.com/blog/2019/03/running-dse-microsoft-windows-using-docker

【问题讨论】:

    标签: docker cassandra datastax-enterprise


    【解决方案1】:

    您需要指定my-dse:9042your_machine_ip:9042,而不是127.0.0.1:9092localhost:9042。主要问题是对于每个 Docker 映像,本地主机对于该容器都是唯一的,并且在 Studio 容器中没有 DSE 进程在端口 9042 上侦听

    【讨论】:

      猜你喜欢
      • 2021-02-03
      • 2018-05-20
      • 2017-12-26
      • 2016-12-11
      • 2017-07-16
      • 2017-05-02
      • 2014-07-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多