Docker容器在端口80上提供不同的子域

时间:2017-09-28 18:51:51

标签: docker docker-compose dockerfile

是否可以在端口80上提供2个泊坞窗容器但不同的子域或主机名?

类似的东西:

api.example.com转到节点应用程序

app.example.com转到Java应用程序

2 个答案:

答案 0 :(得分:5)

是的,你可以。使用代理。

jwilder / nginx-proxy有一个项目允许您通过环境变量提供主机名,而不是将您的请求路由到相应的容器。

这里给出了一个很好的例子:https://blog.florianlopes.io/host-multiple-websites-on-single-host-docker/

答案 1 :(得分:1)

没有。您启动的第一个容器将具有对该端口的独占访问权限,如果您尝试在同一端口上启动第二个容器,则它将失败。

相反,使用负载均衡器(如Nginx或Traefik)来处理到端口80的传入流量,并根据主机头将其代理到两个应用容器中。