gpt4 book ai didi

node.js - Redis 和 docker-compose 连接 127.0.0.1 :6379

转载 作者:可可西里 更新时间:2023-11-01 10:53:27 28 4
gpt4 key购买 nike

我有一个现有 Node 应用程序连接到 127.0.0.1:6379 上的 redis。我无法改变这一点。

我知道使用 docker compose 它连接两个服务 redisnode 并允许它们使用 redis 主机名连接,但是我无法更改。

我怎样才能使 redis 可以从位于 127.0.0.1:6379 主机和端口的 node 应用程序访问?

这是我的 docker-compose.yml 文件:

version: '3'

services:
redis:
image: redis
hostname: "127.0.0.1"
redis-cli:
image: redis
links:
- redis
command: redis-cli -h 127.0.0.1

这是输出:

$ docker-compose run redis-cli
Starting install_redis_1 ... done
Could not connect to Redis at 127.0.0.1:6379: Connection refused
Could not connect to Redis at 127.0.0.1:6379: Connection refused
not connected>

最佳答案

您可以在两个容器中使用 network_mode: host 使 redis 在本地主机上公开其 6379,并使本地主机可用于 redis-cli :

version: '3'

services:
redis:
image: redis
network_mode: host
redis-cli:
depends_on:
- redis
image: redis
network_mode: host
command: redis-cli -h 127.0.0.1 ping

并运行它:

> docker-compose run redis-cli
Starting dockerredis_redis_1 ... done
PONG

关于node.js - Redis 和 docker-compose 连接 127.0.0.1 :6379,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50278066/

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