Mil*_*hah 1 cloud node.js docker
不知道为什么我会收到 SequelizeConnectionRefusedError。我验证了我能够在本地运行所有 docker 映像,但是当我尝试运行“docker-compose up”命令时,我遇到错误:connect ECONNREFUSED 127.0.0.1:5432。 
根据我对你的问题的理解,我的假设如下:
话虽如此,对于希望将 docker 容器连接到主机中运行的 Postgres 服务器的 MacOS 用户来说,这是一个常见问题。由于它们不在同一网络中,因此您的容器无法到达 Postgres 服务器,因此,通过它连接到它127.0.0.1:5432肯定无法访问。
network_mode: host通过添加容器在与主机相同的网络中运行,从而能够到达 Postgres 服务器,在 Linux 机器中解决这个问题是很简单的。然而,由于 Docker 在 Mac 上的实现,其中 Docker 主机实际上是在 MacOS 之上的隐藏虚拟机中运行,因此该解决方案在这里不起作用。
一些建议:
docker-compose如果愿意,可以在同一个文件中)。您始终可以进行端口映射,以便从 Postbird 访问它。以下是将 Postgres 服务器迁移到使用 docker 容器的步骤
docker-compose使用新的数据库服务更新您的:db:
image: postgres:10.5-alpine
environment:
POSTGRES_USER: $UDAGRAM_USERNAME
POSTGRES_PASSWORD: $UDAGRAM_PASSWORD
POSTGRES_DB: $UDAGRAM_DATABASE
ports:
- 35432:5432
volumes:
- <path where you want to persist your database data>:/var/lib/postgresql/data
Run Code Online (Sandbox Code Playgroud)
localhost:35432编辑1
如果您在 AWS RDS 中运行 Postgres 实例,则无需进行上述更改,而是按照其他步骤操作:
UDAGRAM_HOST为可从 AWS RDS 控制台找到的 RDS 终端节点。| 归档时间: |
|
| 查看次数: |
11317 次 |
| 最近记录: |