Route/Bridge docker 带有 zerotier 虚拟适配器的虚拟适配器
Route/Bridge docker virtual adapter with zerotier virtual adapter
我有一堆服务器 运行 在 docker 容器中 docker-for-windows。由于 docker 在 windows 上的工作方式,这些都被推入 hyper-v 虚拟机,然后是容器 运行。所以要访问绑定到本地主机的服务器,我实际上使用的是 hyper-v 虚拟适配器的 ip。
所以当我在主机 windows 机器上时,我可以使用 10.0.75.2:3579 连接到我的服务器。现在我想使用 zerotier 将我所有的 docker 容器桥接到一个虚拟局域网,这样我就可以在我的学校网络之外访问我的容器。 ZeroTier 创建一个名为 "zerotier one virtual port" 的虚拟适配器:
我没有 windows VM 来尝试此操作,但会为此目的使用 docker 网络。例如:
docker network create private
docker run --rm --name web --network private -p host_port_1:container_port_1 -p host_port_2:container_port_2 nginx:latest
docker run --rm --name db --network private -p host_port_3:container_port_1 -p host_port_4:container_port_2 postgres:latest
让我知道进展如何。
我想到的最佳解决方案是不使用 zerotier。我已经切换到 ngrok,它允许重定向到本地 ip 的平凡
- 在您的 ZeroTier 网络上创建这样的托管路由:
[10.0.75.0/24] - [10.147.17.211]
- 在 Windows 中开启 IP 转发。
这将为您网络上的所有 ZeroTier 节点添加静态路由,以便它们知道使用您的 VM hhost 的 zerotier IP 作为到 docker LAN 的路由。