docker安装hyperf环境,连接本机redis问题处理

错误信息显示"Connection refused",这通常说明 Docker 容器内的 Hyperf 项目无法连接到你本机的 Redis 服务。


1. 容器内的 127.0.0.1 指向问题

在 Docker 容器中,127.0.0.1 指的是容器本身,而不是宿主机(你的 Mac)。如果 Redis 安装在宿主机上,容器内部用 127.0.0.1 是无法访问到的。

解决方案

  • 使用 host.docker.internal

    在你的 .env 文件中,将 REDIS_HOST 修改为 host.docker.internal

    ini 复制代码
    REDIS_HOST=host.docker.internal
    REDIS_AUTH=123456
    REDIS_PORT=6379
    REDIS_DB=0

    这样容器就会通过 Docker 内置的 DNS 解析到宿主机 IP。

  • 设置 Docker 网络

    如果你使用的是自定义网络,确保容器可以通过网络访问到宿主机的 IP 地址。


相关推荐
yuxb7316 小时前
Docker学习笔记(二):镜像与容器管理
笔记·学习·docker
Delphi菜鸟17 小时前
docker 部署RustDesk服务
运维·docker·容器
Sweety丶╮79418 小时前
【Kubernetes】知识点总结5
云原生·容器·kubernetes
今晚务必早点睡18 小时前
从零到上线:Docker、Docker Compose 与 Runtime 安装部署全指南(含实战示例与应用场景)
运维·docker·容器
酷ku的森20 小时前
Redis中的hash数据类型
数据库·redis·哈希算法
Arva .20 小时前
Redis
数据库·redis·缓存
zyplanke20 小时前
Kubernetes(四):Service
云原生·容器·kubernetes·k8s
博一波20 小时前
Redis 集群:连锁银行的 “多网点智能协作系统”
数据库·redis·缓存
Android小码家1 天前
Vscode + docker + qt 网络监听小工具
vscode·qt·docker
虚伪的空想家1 天前
K8S删除命名空间卡住一直Terminating状态
云原生·容器·kubernetes·删除·卡顿·delete·命名空间