【发布时间】:2018-12-26 21:25:18
【问题描述】:
这个社区是我解决这个问题的最后手段,因为我已经为此奋斗了几个小时。
我有一个运行在一个容器中的 go 应用程序,在另一个容器中我正在运行一个 postgres 数据库。只要 only 我的 postgres 在容器中,并且我的 go 应用程序像往常一样在本地运行,我就可以从我的 go 应用程序连接到 postgres db。但是,当我的 go 应用程序尝试从 docker 容器中访问 postgres 时,我收到以下 错误:
dial tcp 127.0.0.1:8080: connect: connection refused
下面我尝试提供足够的信息,但如果需要,我很乐意添加更多信息。
我有 2 个使用以下 端口 运行的 docker 容器:
- 去应用,端口信息:8081/tcp -> 0.0.0.0:8081
- postgres 数据库,端口信息:5432/tcp -> 0.0.0.0:8080
我正在运行 go 应用程序:
docker run -it --rm --name gographqlserver --link postgresdb:postgres -d -p 8081:8081 gogogopher;
和 postgres 数据库:
docker run -it --rm --name postgresdb -e POSTGRES_PASSWORD=hello123 -d -p 8080:5432 postgresimage;
两个容器都可以毫无问题地启动。
我还尝试在docker network 中连接两个容器,但没有帮助。
我们将不胜感激!
【问题讨论】:
标签: postgresql docker go