【问题标题】:Hostname for website running inside Docker在 Docker 中运行的网站的主机名
【发布时间】:2017-05-07 13:40:19
【问题描述】:

我是 docker 新手,我的问题类似于:

My websites running in docker containers, how to implement virtual host?

但我实际上并不需要使用不同的虚拟主机托管多个站点。我只需要让服务器响应特定的虚拟主机名,例如:myhost.mysite.com

现在该站点通过 IP 可以正常工作,但是当我使用主机名时不会响应。由于我只有一个站点/主机名,我是否必须按照问题中的描述设置代理?

我尝试将 -h 'myhost.mysite.com' 添加到我的 docker run 命令中,但这似乎没有任何区别。

PS。主机名 DNS 确实正确解析为 docker 服务器的 IP 地址。

【问题讨论】:

    标签: docker


    【解决方案1】:

    这真的取决于容器内运行的网络服务器。

    • Apache:使用ServerName 可能还有ServerAlias
    • Nginx:使用server_name
    • Django:使用ALLOWED_HOSTS

    真的,Docker 不需要知道。 HTTP 服务器软件需要知道。

    您链接到的问题涉及多个站点,这就是需要代理的原因。如果您只运行一个站点,则不需要代理(至少,不是出于此目的)。只需让 Docker 自己监听端口 80 和/或 443,然后让运行在其中的服务器软件决定哪些主机名对站点有效。

    【讨论】:

      猜你喜欢
      • 2015-11-18
      • 2015-06-13
      • 2021-06-14
      • 1970-01-01
      • 2019-08-25
      • 1970-01-01
      • 2019-05-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多