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 地址。


相关推荐
雨中飘荡的记忆8 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
曲幽16 小时前
FastAPI分布式系统实战:拆解分布式系统中常见问题及解决方案
redis·python·fastapi·web·httpx·lock·asyncio
fetasty16 小时前
rustfs加picgo图床搭建
docker
蝎子莱莱爱打怪1 天前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
小p2 天前
docker学习7:docker 容器的通信方式
docker
小p2 天前
docker学习5:提升Dockerfile水平的5个技巧
docker
小p2 天前
docker学习3:docker是怎么实现的?
docker
小p4 天前
docker学习: 2. 构建镜像Dockerfile
docker
小p4 天前
docker学习: 1. docker基本使用
docker
崔小汤呀5 天前
Docker部署Nacos
docker·容器