You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Compose启动时出现ECONNREFUSED 0.0.0.0:5432连接错误怎么办?

问题根因

最核心的原因是Node.js应用内的数据库连接地址配置错误:

  • 你当前在应用代码中配置的数据库Host为0.0.0.0,该地址在容器网络内指代的是当前应用容器自身的网络接口,而不是Postgres数据库容器的地址,自然会触发ECONNREFUSED连接拒绝报错。
  • Docker Compose同一自定义网络下的容器默认支持服务名域名解析,你配置中数据库服务的名称为database,这才是应用容器可以正确解析到的数据库地址。
  • 你配置的0.0.0.0:5432端口映射仅作用于宿主机到数据库容器的访问,不适用容器内部的互相通信。

错误截图如下:
错误截图

解决步骤

  1. 修改Node.js应用中的数据库连接配置,将Host参数从0.0.0.0替换为database,端口保持5432不变,用户名、密码、数据库名对应你配置的postgres即可。
  2. 如果你需要在宿主机本地直接运行Node.js应用(不放在容器内)进行开发,才需要在本地环境的配置中使用127.0.0.1/0.0.0.0作为数据库Host。
  3. 修改完成后执行以下命令重启服务验证:
# 不需要清空已有数据库数据的话可以去掉-v参数
docker compose down -v
docker compose up --build

内容的提问来源于stack exchange,提问作者Brett

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.22 03:15:03