Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在同一台计算机上使用docker运行两个nginx实例_Docker_Nginx_Nginx Reverse Proxy - Fatal编程技术网

在同一台计算机上使用docker运行两个nginx实例

在同一台计算机上使用docker运行两个nginx实例,docker,nginx,nginx-reverse-proxy,Docker,Nginx,Nginx Reverse Proxy,我在使用docker的两个独立VPS上托管的两个独立nginx后面有两个独立的站点 当我尝试将两个nginx作为单独的docker容器放在同一个VPS服务器上时,它不起作用。正在运行的容器将被较新的容器覆盖 如何在同一台docker机器上托管两个nginx实例?两个重定向到单独的proxy_pass应用程序,但nginx端口相同,即80和443 如果您希望有两个nginx容器,都监听同一个端口,您可以在swarm模式下使用Docker。它有一个内置的负载均衡器,可以将负载重定向到它们两个。(注意

我在使用docker的两个独立VPS上托管的两个独立nginx后面有两个独立的站点

当我尝试将两个nginx作为单独的docker容器放在同一个VPS服务器上时,它不起作用。正在运行的容器将被较新的容器覆盖


如何在同一台docker机器上托管两个nginx实例?两个重定向到单独的proxy_pass应用程序,但nginx端口相同,即80和443

如果您希望有两个nginx容器,都监听同一个端口,您可以在swarm模式下使用Docker。它有一个内置的负载均衡器,可以将负载重定向到它们两个。(注意,在这种情况下,两个nginx实例必须来自同一个映像)


只需使用您当前的docker compose文件,但要在swarm模式下部署它。

Hi,我想使用不同的映像!你能再解释一下吗?2个不同的图像在同一端口上侦听?它应该如何决定每个请求应该命中哪个nginx?我认为这是不可能的,除非在这两个之前添加某种网关(可能是第三个nginx)。。听起来是个好主意。但我明白,这是不可行的,目前的设置,因为这两个网站将使用相同的端口。对吗?如果它们都使用同一个网关,则不会。也许您可以让它与子域之类的东西一起工作,或者合并两个nginx实例(它们的配置)。或者也许有一种方法,我不是这方面的专家我不确定,正如我说的,我不是这方面的专家,但我非常确定,你不能在同一台机器上使用两个nginx实例来监听同一个端口。