如何从在docker compose的不同端口上运行的另一个烧瓶容器中调用一个容器的端点?

问题描述 投票:0回答:1

我正在尝试使用docker-compose实现3个flask docker容器。我在不同的端口127.0.0.1:5000127.0.0.1:5001127.0.0.1:5002上运行每个flask应用程序。我已经在docker-compose.yml文件中提到了容器。 docker-compose正在创建默认网络。

但是当我尝试从5001 container's代码访问5000 container's烧瓶端点时,>]

requests.get('http://127.0.0.1:5001/endpoint'),它引发以下错误。

HTTPConnectionPool(host = \'0.0.0.0 \',port = 5001):超过了最大重试次数带有URL(由NewConnectionError引起)>

有人知道我为什么要得到这个吗。

我正在尝试使用docker-compose实现3个flask docker容器。我在不同的端口127.0.0.1:5000,127.0.0.1:5001,127.0.0.1:5002上运行每个flask应用程序。我在...

python-3.x docker flask docker-compose docker-networking
1个回答
1
投票

这是因为您正在尝试连接到Docker容器本身内的localhost,即流量保持在该Docker容器内。

您要做的是通过主机名连接到另一个容器。在由docker / docker-compose管理的网络上下文中,这仅仅是docker容器的名称。例如。对于容器foo,您可以使用容器内的http://foo:5001/通过HTTP连接到端口5001。

© www.soinside.com 2019 - 2024. All rights reserved.