我是docker的新手,我的问题类似于:
My websites running in docker containers, how to implement virtual host?
但我实际上并不需要托管具有不同虚拟主机的多个站点。我只需要让服务器响应特定的虚拟主机名,例如:myhost.mysite.com
现在该网站通过IP工作正常但在我使用主机名时没有响应。由于我只有一个站点/主机名,我是否必须按照问题中的描述设置代理?
我已尝试添加-h' myhost.mysite.com'我的码头运行命令,但似乎没有任何区别。
PS。主机名DNS确实正确解析为docker服务器的IP地址。
答案 0 :(得分:2)
这实际上取决于在容器内运行的Web服务器。
ServerName
,可能ServerAlias
server_name
ALLOWED_HOSTS
真的,Docker不需要知道。 HTTP服务器软件需要知道。
您与多个网站交易相关的问题,这就是需要代理的原因。如果您只运行一个站点,则不需要代理(至少不是为此目的)。让Docker监听端口80和/或443本身,让内部运行的服务器软件决定哪些主机名对该站点有效。