Redis连接ECONNREFUSED 127.0.0.1:6379 [重复]
Posted
技术标签:
【中文标题】Redis连接ECONNREFUSED 127.0.0.1:6379 [重复]【英文标题】:Redis connect ECONNREFUSED 127.0.0.1:6379 [duplicate] 【发布时间】:2020-12-25 03:02:52 【问题描述】:我在我的服务器上运行 redis(Redis 没有在容器中运行),我正在尝试连接到我的容器内的 redis,该容器有一个 Node.js 应用程序正在运行。在日志中使用我的 Dockerfile 中的节点应用程序启动 Docker 容器时,出现以下错误:Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED 127.0.0.1:6379
【问题讨论】:
ECONNREFUSED
表示端口6379
已经在使用中
是的,当我在它用 pong 回答的服务器上执行 redis-cli ping 时,它被服务器上的 Redis 使用。所以 redis-server 工作但在我的 docker 容器中的节点应用程序中我无法连接
您使用的是哪个操作系统?
【参考方案1】:
Docker 现在为 Windows/Mac 版本提供了一个名为 host.docker.internal
的自定义 DNS 名称(请参阅 https://docs.docker.com/docker-for-windows/networking/#use-cases-and-workarounds),它解析为主机的内部 IP 地址。
因此,不要在连接字符串中使用localhost:6379
/127.0.0.1:6379
,而是将其更改为host.docker.internal:6379
。
注意:对于 Linux,有一个解决方法 -> 请参阅 https://***.com/a/61424570/3761628
【讨论】:
以上是关于Redis连接ECONNREFUSED 127.0.0.1:6379 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
(在localhost上连接到Redis时出错:6379(Errno :: ECONNREFUSED)):
无法运行量角器 - ECONNREFUSED 连接 ECONNREFUSED