Docker-Compose:与 Postgres 的连接被拒绝
当从 Docker-compose 设置中通过 pg-admin 连接到 Postgres 时,用户可能会遇到拒绝从 Go 应用程序建立连接的情况。本文深入研究了这个问题并提供了解决方案。
当 Go 应用程序生成的数据库 URL 将数据库主机名引用为“postgres”,而实际的容器/服务名称是“database”时,就会出现此问题。要解决此问题,请考虑更改 compose.yaml 文件中的名称或显式定义主机名字段。例如:
1 2 3 4 |
|
或者,为多个容器服务创建专用网络以相互通信,防止连接问题。在每个服务的配置中添加“网络”部分,并在 compose.yaml 末尾定义网络:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
通过实现这些更改,您可以在 Go 应用程序和 Postgres 之间建立连接,同时还可以确保 Docker-compose 环境中的高效通信。
以上是为什么我的 Go 应用程序拒绝 Docker Compose 中的 Postgres 连接?的详细内容。更多信息请关注PHP中文网其他相关文章!