【发布时间】:2020-05-27 02:36:24
【问题描述】:
当Apache直接安装在主机上时,我在"C:\Windows\System32\drivers\etc\hosts"添加一个内部主机名并使用虚拟主机轻松访问本地不同的项目说:http://foo.test和http://bar.test。
为每个项目使用 docker 容器,我可以通过在 docker-compose 文件中分配主机端口来访问该项目。
我希望docker可以有一些内部工具来实现通过主机名访问容器。
使用反向代理可能是这些相对较旧但精彩的文章中描述的解决方案。
- https://www.alexecollins.com/developing-with-docker-proxy-container/
- http://jasonwilder.com/blog/2014/03/25/automated-nginx-reverse-proxy-for-docker/
但是因为我相信这是一个非常普遍的开发需求,我希望 Docker 有内置的东西来解决它。
【问题讨论】:
-
您可以使用相同的 docker-compose 文件启动 apache 或 nginx 容器,方法是使用您声明的服务名称访问您的容器。
-
是的,这就是我的建议。使用 nginx 或 apache 作为反向代理,通过这些端口与容器通信,并从主机使用主机名连接到 nginx 或 apache。
-
@BurakSerdar 我相信您指的是链接中解释的方式。
-
没错。反向代理很常见。我不知道有内置解决方案。
标签: windows docker networking dns containers