【发布时间】:2020-05-23 20:41:29
【问题描述】:
我有 3 个容器。一种是提供静态内容的 lighttpd 服务器(front)。我有 2 个烧瓶服务器处理后端(back 和 model)
这是我的 docker-compose.yml
version: "3"
services:
front:
image: ecd3:latest
ports:
- 4200:80
tty: true
links:
- "back"
depends_on:
- back
networks:
- mynet
back:
image: esd3:latest
ports:
- 5000:5000
links:
- "model"
depends_on:
- model
networks:
- mynet
model:
image: mok:latest
ports:
- 5001:5001
networks:
- mynet
networks:
mynet:
我正在尝试从我的前端 (front) 向我的烧瓶服务器 (back) 发送一个 http 请求。我已将烧瓶服务器绑定到 0.0.0.0,甚至在前端使用了服务名称 (http://back:5000/endpoint)
尝试在前端容器内卷曲烧瓶服务器(curl back:5000)给了我这个:
curl: (52) Empty reply from server
从前端容器内部 ping 烧瓶服务器有效。这意味着必须已经建立了连接。
为什么我不能从我的前端连接到我的烧瓶服务器?
【问题讨论】:
-
@halfer,看起来我需要在卷曲时绕过代理中的服务名称。现在卷发很好。谢谢。构建我的 docker 镜像并进一步测试。
-
@halfer,我可以使用 curl 从容器提示符发送一个发布请求,但是当我尝试使用我的实际前端发送请求时它仍然失败
-
“实际”前端是指您的浏览器?
-
更准确地说,我在浏览器控制台中收到“net::ERR_NAME_NOT_RESOLVED”错误
-
谢谢@halfer。现在对我来说很有意义。
标签: docker flask networking docker-compose