使用 docker compose 创建 redis 集群 (v5)

Create redis cluster (v5) with docker compose

现在已经有几天尝试使用 docker-compose 创建一个 redis 集群,但是它不起作用,因为当我的客户端发送请求时,redis 没有发送一个好的 ip 地址(它发送从 docker 到我的主机内部 ip,但我希望他发送主机 ip)。

我正在寻找 "cluster-announce-ip" 但没有成功。

我试过用主机模式创建但是没用...我不明白为什么..

现在redis-cli显示:

Waiting for the cluster to join

你可以在这里找到我的作品:https://github.com/fhebuterne/redis-cluster

如果有人有解决方案,我很感兴趣

谢谢

经过一些测试,无法在具有多个 docker 容器和 Redis 集群的 docker 中使用内部网络(即使使用 "cluster-announce-ip"),所以我找到的唯一解决方案, 是在每个服务上定义(on docker compose), 这个选项:

network_mode: "host"

并在主机和容器之间使用 brige docker ip,在 windows 上,我用 ipconfig 找到它并查找 "vEthernet (DockerNAT)",基本 ip 是 10.0.75.1,在我的 redis 上-cli 和 redis.conf,我放了 10.0.75.2,所以每个容器都可以与其他容器连接,当我用我的主机发送请求时,集群会发送良好的响应,如果不清楚,我很抱歉,我已经推送了我的我存储库中的解决方案(link 在我之前的消息中)。