繁体   English   中英

安装 Docker 时出现 WSL2 局域网重定向问题

[英]WSL2 lan redirection issue when Docker installed

我当前的设置是我的笔记本电脑和台式机,它们连接在同一个网络中。 我做 webdev,所以我在我的笔记本电脑上编码,并在我的桌面浏览器中查看结果。 安装 docker 后,我无法再访问我的笔记本电脑的 web 服务器,这些服务器直接在 WSL2 中运行,前提是它们在 Docker 容器中运行。

WSL1 中不存在此问题,即:

如果您在 windows 机器上安装 docker 桌面并启用新的 WSL2 集成,它将弄乱您的 windows 'hosts' 文件(位于 System3 %SYSTEMROOT%\System32\drivers\etc\hosts

Docker 自动添加以下内容:

# Added by Docker Desktop
192.168.1.77 host.docker.internal
192.168.1.77 gateway.docker.internal
# To allow the same kube context to work on the host and the container:
127.0.0.1 kubernetes.docker.internal

请注意,192.168.1.77 是我在路由器中设置的笔记本电脑 static IP

我的猜测是这些输入将我的桌面请求重定向到 docker,完全破坏了直接访问。 这并不理想,因为我必须构建一个容器来编写一个简单的反应应用程序,这会导致很多无用的复杂性

ps:我在hosts文件中尝试了以下条目,没有成功:

192.168.1.77 localhost

还:

172.22.3.92 ubuntu.wsl    # managed by wsl2-host (service that creates a hostname for WSL2 ip)

192.168.1.77 ubuntu.wsl

唯一的解决方法是禁用 docker 并清理主机文件,这并不是它应该的样子。

将此添加到 ~/.wslconfig (win) 或 /etc/wsl.conf (wsl)

[network]
generateHosts = false

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM