大家好,
我遇到了一个问题,希望你能帮助我。
我有一个运行 OpenWrt 等效路由器的路由器 (NanoPi)。 Docker 安装在系统上,托管多个容器。路由器和 Docker 均可通过 192.168.2.1 访问。为了访问任何容器,我使用了 192.168.2.1:container_port,这非常有效。
为了改进设置,我安装了 Nginx Proxy Manager (NPM) 以通过子域访问服务,例如 service_name.my_ddns_provider.com。经过漫长的配置和故障排除过程,我终于让它工作了。现在一切都很顺利。
为了实现这一目标,我在 Docker 容器中配置了 Pi-hole 作为 Docker 服务的本地 DNS。我的设置方法如下:
定义的本地 DNS 记录:
已创建本地 CNAME 记录:
然后,我在 Nginx 代理管理器中添加了一个新的 Proxy Host 条目:
结果,它完美地工作了:
此设置允许我获取 SSL 证书并使用域名而不是 IP:端口。
我的 Nginx 代理管理器使用端口 80 和 443: NPM 连接到桥接网络,这是一个至关重要的细节。
现在,棘手的部分:
我在另一台机器上安装了 Proxmox。在 Proxmox 中,我创建了虚拟机/容器:
此设置旨在处理更多资源密集型服务。 Portainer 下的服务使用标准方法(即 192.168.3.100:portainer_service_port)正常运行。
当然,我想以与我之前所做的类似的方式将这些服务从 Portainer 添加到 Nginx 代理管理器。
Proxmox 已从我的主路由器分配了 DNS:
从 Portainer 容器内,可以访问 192.168.2.1:
问题: 尽管如此,我还是无法通过 Nginx Proxy Manager 访问 Portainer 下运行的服务:
我不明白为什么会发生这种情况。有人可以帮我解决这个问题吗?
顺便说一句:即使我关闭防火墙,情况也是一样。
你找到解决办法了吗?当我使用提供商提供的 VPS 时,我得到了同样的结果,但当我在家庭实验室上测试时,一切正常。