📜  允许本地软管 wsl2 (1)

📅  最后修改于: 2023-12-03 14:50:02.285000             🧑  作者: Mango

允许本地软管 WSL2

在使用 WSL2 (Windows Subsystem for Linux version 2) 的过程中,有时我们需要让 WSL2 系统访问本地安装的软件或服务,这时就需要允许本地软管。本文将介绍如何在 WSL2 中允许本地软管的方法。

步骤1:在宿主机中安装 socat

在 WSL2 中允许本地软管需要使用到 socat 工具。先在宿主机中安装 socat:

sudo apt-get install socat -y
步骤2:在 WSL2 中启动 socat

在 WSL2 中启动 socat,将本地软管映射到 WSL2 的网络命名空间中:

sudo socat TCP-LISTEN:2375,fork,reuseaddr UNIX-CLIENT:/var/run/docker.sock

其中 2375 是映射到 WSL2 中的端口号,可以自定义。

需要注意的是,运行上述命令需要在管理员权限下执行,否则会报错。

步骤3:配置 Docker 客户端

如果你需要在 WSL2 中访问本地安装的 Docker 服务,需要在 Docker 客户端中设置对应的地址。

打开 Docker 客户端,点击设置 -> Daemon -> Basic,在“Docker Engine”下添加以下内容:

"hosts": ["tcp://localhost:2375", "npipe://"]

然后点击“Apply & Restart”按钮,重启 Docker 客户端即可。

结论

通过以上步骤,就可以在 WSL2 中允许本地软管,并且可以访问本地安装的 Docker 服务。

需要注意的是,允许本地软管可能存在一定的安全风险,因此在实际使用中需要根据实际情况进行评估和管理。