gpt4 book ai didi

docker - 使用 docker-compose 从单独的 docker 容器访问 Cassandra

转载 作者:行者123 更新时间:2023-12-02 18:04:12 25 4
gpt4 key购买 nike

我正在尝试从一个单独的容器(名为 main)连接到一个 cassandra 容器。

这是我的 docker-compose.yml

version: '3.2' 
services:
main:
build:
context: .
image: main-container:latest
depends_on:
- cassandra
links:
- cassandra
stdin_open: true
tty: true

cassandra:
build:
context: .
dockerfile: Dockerfile-cassandra
ports:
- "9042:9042"
- "9160:9160"
image: "customer-core-cassandra:latest"

一旦我使用 docker-compose up 运行它,我运行这个命令:

docker-compose exec main cqlsh cassandra 9042

但是我得到这个错误:

连接错误:('无法连接到任何服务器',{'172.18.0.2':错误(111,“尝试连接到 [('172.18.0.2',9042)]。最后一个错误:连接拒绝")})

最佳答案

我想出了答案。基本上,在 cassandra.yaml 文件中,它将默认的 rpc_address 设置为 localhost。如果是这种情况,Cassandra 将只监听本地主机上的请求,并且不允许来自其他任何地方的连接。为了改变这一点,我必须将 rpc_address 设置为我的“cassandra”容器,以便我的主容器(和任何其他容器)可以使用 cassandra 容器 ip 地址访问 Cassandra。

rpc_address: cassandra

关于docker - 使用 docker-compose 从单独的 docker 容器访问 Cassandra,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44664028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com