Laravel Redis php_network_getaddresses:getaddrinfo失败:名称或服务未知[tcp:// redis:6379]

问题描述 投票:0回答:1

服务器抛出以下错误可能是由于站点流量过大或Redis连接丢失。但无法找到此错误的原因,可以帮助解决。

由于每天的大约英国时间凌晨4点,服务器也由于以下错误而停止。

因此,对此的任何帮助都会有所帮助。

Server : Digital Ocean
Frontend : React JS
Backend : laravel (5.8)
Used spiritix/lada-cache library for mysql cashing to manage large amount of data.
Application is running on Docker containers.

1)错误:

生产。错误:php_network_getaddresses:getaddrinfo失败:名称或服务未知[tcp:// redis:6379] {“ exception”:“ [对象](Predis \ Connection \ ConnectionException(代码:0):php_network_getaddresses:getaddrinfo失败:名称或服务不正确已知[tcp:// redis:6379]/var/www/vendor/predis/predis/src/Connection/AbstractConnection.php:155)

2)错误:-

Redis-加载数据集是Memory Sport:

3)错误:-

production.ERROR:连接被拒绝[tcp://127.0.0.1:6379]

此错误也会停止服务器。

我已经尝试在cron调度程序上重新启动docker down容器。但是实际问题不在于docker容器,而是一些内部laravel软件包,例如Predis | Ladacash为无法找到确切解决方案而抛出以上错误。

laravel-5 redis docker-container
1个回答
0
投票

由于您使用的是docker,因此您不再应该使用IP(例如127.0.0.1)来引用您的Redis服务器(docker容器)。而是使用容器名称。

1)运行:docker ps列出所有容器,然后找到redis服务器,并将container name列下的名称复制并粘贴到主机的.env文件中。

2)确保您的应用程序容器和Redis容器都在同一网络中:

docker network ls
docker network inspect <network_name>
© www.soinside.com 2019 - 2024. All rights reserved.