我的主机 (Ubuntu Server) 上运行着几个容器,我可以通过 host:port 在网络上访问它们。我尝试使用容器来替换 IIS,因此我试图弄清楚如何分配容器将响应的主机名,但我没有找到答案。有没有办法让每个容器响应相同的端口(例如,container1.example.com
)container2.example.com
,或者这是否需要某种设备或反向代理位于前面以从 转发name.example.com
到host:port
?
答案1
看起来你做想要在前面放一个反向代理,但你也可以用容器来做到这一点:
https://www.thepolyglotdeveloper.com/2017/03/nginx-reverse-proxy-containerized-docker-applications/
https://github.com/jwilder/nginx-proxy
http://jasonwilder.com/blog/2014/03/25/automated-nginx-reverse-proxy-for-docker/
这也意味着您不需要将其他容器的端口映射到主机,只需将端口映射到反向代理。