【发布时间】:2018-08-24 03:08:13
【问题描述】:
我有一个正在运行的 docker,它用于运行如下的 postgres。
$ sudo docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
505ab3ffc4b1 postgres "docker-entrypoint..." 26 minutes ago Up 26 minutes 0.0.0.0:5432->5432/tcp posttest
我有另一个 docker,其中一个 python 文件正在运行并尝试连接到连接到 localhost:5432 的 postgres,但由于以下错误而失败:
$sudo docker run test
could not connect to server: Connection refused
Is the server running on host "localhost" (127.0.0.1) and accepting
TCP/IP connections on port 5432?
在我的测试 Dockerfile 中,它连接到 localhost:5432,我怎样才能将它连接到另一个 docker ip 和端口?
我是docker新手,请帮忙
【问题讨论】:
-
您能否也发布您的 Dockerfile 以便我们进行调查?
-
- 你应该被阅读 docs.docker.com/network/network-tutorial-standalone/… - 尝试改变你的 IP v4
-
我的 docker 文件没有很多东西 (docker test) COPY 。 /app WORKDIR /app RUN ls RUN pip3 install -r /app/requirements.txt CMD python3 /app/parser.py 这里parser.py访问的是localhost:5432,应该是其他docker 5432
-
我没有太多网络知识。目前我所有的应用程序都在本地运行,我想做的是在新容器中访问另一个容器中的数据库。
-
如果您为两个容器都提供 Dockerfile,那将非常有用。如果您不想共享敏感信息,可以更改一些变量值。
标签: python docker dockerfile