我在 WIN10 机器上的 WSL2 中运行 SSH 服务器。为了完成这项工作,我正在使用:
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=22 connectaddress=172.19.237.178 connectport=22
Run Code Online (Sandbox Code Playgroud)
这最初工作正常。172.19.237.178是 WSL2 VM 的 IP。
只有一个问题。我将 sshd 设置为在 PC 启动时运行,并且每次启动机器时 WSL2 都有不同的 IP。有没有办法将 WSL2 配置为使用静态 IP?
编辑:有关确定 WSL 机器 IP 的变通方法,请参阅此问题。
我了解 docker-desktop 的 WSL2 后端通过创建 2 个发行版来工作:docker-desktop& docker-desktop-data。
我可以看到这些发行版的文件系统安装在我的 Ubuntu WSL2 发行版中:
grant@BeastMini-II:~$ ls -l /mnt/wsl
total 4
drwxr-xr-x 4 root root 100 Apr 1 09:12 docker-desktop
drwxr-xr-x 3 root root 60 Apr 1 09:12 docker-desktop-bind-mounts
drwxr-xr-x 4 root root 80 Apr 1 09:12 docker-desktop-data
-rw-r--r-- 1 root root 197 Apr 1 09:12 resolv.conf
Run Code Online (Sandbox Code Playgroud)
当我通过 Powershell 查看 docker-desktop-data 时,我可以看到文件系统中的各种文件:
PS C:\Users\grant> ls \\wsl$\docker-desktop-data
Directory: \\wsl$\docker-desktop-data
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 01/02/2023 18:36 …Run Code Online (Sandbox Code Playgroud)