gpt4 book ai didi

laravel - Ioredis 与 Laradock redis 容器连接超时

转载 作者:可可西里 更新时间:2023-11-01 11:23:55 24 4
gpt4 key购买 nike

我有一个基于 Laravel 构建的应用程序。我正在使用 Laradock 并尝试使用 Redis 容器,但我遇到了连接问题。

使用命令:

docker inspect laradock_redis_1

我可以看到:"IPAddress": "172.22.0.2",

在我的前端,我正在尝试使用 ioredis 连接到 Redis:

import Redis from 'ioredis';
const redis = new Redis({
port: 6379,
host: 172.22.0.2,
password: "password"
});
redis.on('pmessage', function(subscribed, channel, message) {
...
})

但我无法连接,因为出现此错误:

[ioredis] Unhandled error event: Error: connect ETIMEDOUT

我也在尝试更改 ip 和端口,例如:

port: 6379,
host: 127.0.0.1,

或者将 docker-compose 上的端口更改为 1111 但它还不起作用。我做错了什么?

最佳答案

您可以使用容器的名称,而不是使用容器的 ip 地址,或者如果您使用的是 docker-compose.yml,则可以使用 的名称服务 而不是 ip 地址。所以沿着这些方向的东西会起作用:

const redis = new Redis({
port: 6379,
host: laradock_redis_1
});

关于laravel - Ioredis 与 Laradock redis 容器连接超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54401020/

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