【发布时间】:2018-02-25 05:02:02
【问题描述】:
我使用 docker-compose 堆栈在我的个人 VPS 上运行。现在,我有一个由以下组成的堆栈:
- Nginx(暴露端口 443)
- 幽灵(博客)
- MySQL(用于 Ghost)
- 管理员(对于 MySQL,公开端口 8080)
我想试用 Matomo 分析软件,但我不想将它添加到我当前的堆栈中,直到我对它感到满意,所以我决定为 Matomo 分析创建第二个 docker-compose 堆栈:
- Nginx(暴露端口 444)
- 间友
- MariaDB(用于 Matomo)
- 管理员(对于 MariaDB,公开端口 8081)
在两个堆栈都运行的情况下,我可以在相应的端口访问所有内容,但只能通过 IP 地址。如果我尝试使用我的域,它只能连接到第一个 Nginx,即暴露端口 443 的那个。如果我在浏览器中尝试https://www.example.com:444,它无法连接。如果我在浏览器中尝试https://myip:444,它会连接到暴露端口 444 的第二个 Nginx 实例,警告我 SSL 证书有问题(因为我连接到我的 IP,而不是我的域),然后让我通过。
我想知道是否有人知道为什么会发生这种行为。诚然,我对设置 VPS、使用 Nginx 代理到其他托管服务等方面很陌生。如果事实证明 Nginx 不能以这种方式使用,我很想听听有关如何安排它的建议。 (我是否必须一次只运行一个 Nginx 实例,并且必须通过它代理到其他所有实例?等等)
谢谢!
【问题讨论】:
标签: docker nginx docker-compose vps nginx-reverse-proxy