Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
连接到在Docker中运行的cassandra_Docker_Cassandra - Fatal编程技术网

连接到在Docker中运行的cassandra

连接到在Docker中运行的cassandra,docker,cassandra,Docker,Cassandra,我试图在docker容器中运行Cassandra并从我的Mac(主机)连接到它,但我不断收到连接拒绝错误 docker命令: => docker run --rm --name cassandra -d cassandra:3.11 -p 9042:9042 => docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS

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

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 run-p9042:9042--rm--name cassandra-d cassandra:3.11
docker ps你应该看到这样的东西吗

  • 0.0.0.0:9042->9042/tcp

有关更多信息:

在docker映像名称之后传递的任何内容,它将此参数视为容器入口点的参数

cassandra:3.11 -p 9042:9042
所以实际上docker pass
-p9042:9042
这是入口点的一个参数,您可以通过检查docker容器来实现这一点

运行并发布端口

docker run -it  - - name cassandra -e CASSANDRA_PASSWORD=cassandra --rm docker.io/bitnami/cassandra:3-debian-10
一旦容器启动,然后验证连接

docker exec -it cassandra bash -c "cqlsh -u cassandra -p cassandra"

非常感谢。我很惊讶期权顺序很重要。你知道在什么地方有记录吗?