连接到apache cassandra的datastax分发的容器

bq3bfh9z  于 2021-06-14  发布在  Cassandra
关注(0)|答案(1)|浏览(342)

我创建了apache cassandra(ddac)的datastax分发的docker容器:

docker pull datastax/ddac
docker run -e DS_LICENSE=accept --name ddac -d datastax/ddac

docker ps


我在通过datastax devcenter连接到节点时出错:

在通过7000和7199端口尝试连接时发生了相同的错误。
如何连接到部署在docker容器中的ddac节点?

更新

我禁用了windows防火墙以防万一。使用 docker run -e DS_LICENSE=accept --name ddac -p 9042:9042 -d datastax/ddac 得到了同样的错误:
无法访问指定的主机。所有尝试查询的主机都失败(尝试:localhost/0:0:0:0:0:0:0:1:9042(com.datastax.driver.core.exceptions.transportexception:[localhost/0:0:0:0:0:1]通道已关闭),localhost/127.0.1:9042(com.datastax.driver.core.exceptions.transportexception:[localhost/127.0.0.1]通道已关闭))
[localhost/0:0:0:0:0:0:0:0:1]频道已关闭
[localhost/127.0.0.1]频道已关闭

uidvcgyl

uidvcgyl1#

这是因为容器有自己的ip,您需要连接到它—您可以使用

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ddac

或者在主机上公开cassandra端口,这样您就可以通过localhost连接—这是通过 -pdocker run :

docker run -e DS_LICENSE=accept --name ddac --rm -p 9042:9042 -d datastax/ddac

相关问题