连接到在Docker中运行的cassandra

我试图在Docker容器中运行Cassandra并从我的Mac(主机)连接到它,但是我不断收到Connection拒绝错误。

docker命令:

=> docker run --rm --name cassandra -d cassandra:3.11 -p 9042:9042 => docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4ecc9dcd8647 cassandra:3.11 "/docker-entrypoin..." 33 minutes ago Up 33 minutes 7000-7001/tcp, 7199/tcp, 9042/tcp, 9160/tcp cassandra => cqlsh Connection error: ('Unable to connect to any servers', {'127.0.0.1': error(61, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")}) 

如果我在实例中执行bash shell:

 => docker exec -it cassandra bash 

我可以在本地运行cqlsh并连接到cassandra。

我错过了什么?

端口仍然没有暴露在外试试这个

  • docker运行-p 9042:9042 –rm –name cassandra -d cassandra:3.11

做docker你应该看到这样的事情

  • 0.0.0.0:9042->9042/tcp

欲了解更多信息: https : //docs.docker.com/engine/reference/commandline/run/