以下设置:
在数据中心的我的 VPS 上在线:Ubuntu Server (18.04) 正在运行。码头工人正在运行。Nginx-proxy 和letsencrypt 伴侣正在运行。已安装 Wireguard 服务器。Wireguard 服务器的 IP 是 10.0.0.1
在家里:我在我的电脑上运行一个 Ubuntu 服务器(18.04)。nginx 服务器 (docker) 已启动并正在运行。我可以通过它的 IP 从我的 LAN 客户端访问它。Wireguard 客户端安装并连接到我的 VPS 上的 Wireguard 服务器。(家用电脑有wireguard IP 10.0.0.10)
VPS 和 PC 都可以通过它们的 10.0.0.0/24 网络相互 ping 通。我可以毫无问题地从我的 vps 访问我家 PC 上的网络服务器。(我在 docker 中运行 nginx 的家用 PC 上公开端口 8080)。
现在的问题:
如何让我的 nginx-proxy 和letsencrypt 伴侣访问我的wireguard 连接的家庭服务器IP,以便我可以通过互联网连接(由Letsencrypt SSL 保护)到我的家庭电脑网络服务器?我尝试了一些没有成功的事情:
## OPTION 1
homeservertest1:
restart: always
image: cwempe/docker-dummy:latest
environment:
VIRTUAL_HOST: homeserver.mydomain.com
VIRTUAL_PORT: 8080
LETSENCRYPT_HOST: homeserver.mydomain.com
LETSENCRYPT_EMAIL: user@provider.com
UPSTREAM_NAME: http://10.0.0.10
选项 1 在浏览器中返回“502 Bad Gateway”。
## OPTION 2
homeservertest2:
restart: always
image: qoomon/docker-host
cap_add: [ 'NET_ADMIN', 'NET_RAW' ]
expose:
- "10.0.0.10:8080"
environment:
VIRTUAL_HOST: homeserver.mydomain.com
LETSENCRYPT_HOST: homeserver.mydomain.com
LETSENCRYPT_EMAIL: user@provider.com
选项 2 无法启动,因为 docker 抱怨如下:
services.homeservertest2.expose is invalid: should be of the format 'PORT[/PROTOCOL]'
我感谢有关如何解决此问题以使我的家庭服务器通过我的公共域名 ssl 加密运行的任何帮助/想法。
谢谢