在windows 上要友好的使用docker,有在linux上的丝滑体验那简直是难于上青天!!!
不过呢好在能勉强用吧。如果是能在这个wsl2中实现设置固定ip访问,使得我们能通过windows10这个宿主机访问wsl2中的docker 容器,例如安装了redis,要在windows10上的开发中使用它。这就让wsl2瞬间香了,可这是个难题,巨硬自己都没有解决。原因在于我们使用的wsl2是由windows 的Hyper-V 虚拟平台创建,每次重启windows之后Hyper-V 会重新启动,自然wsl2之前设置好的固定ip也会被重置,所以直接在wsl2中设置这个固定ip得不到吃。
那有没有其他的替代解决方案呢?请看下面:
根据wsl在github上的issues中我们可以找到有人已经有办法解决了,原理是在启动系统的时候手动重新给win10 的vEthernet (WSL) 和 wsl2下的eth0 添加一个ipv4地址。
那要怎么手动设置呢?
在powershell 中执行下面两行命令即可:
# 给wsl 中的ubuntu 设置ipv4 的ip 192.168.86.16,要在windows中访问wsl就用此ip
wsl -d Ubuntu -u root ip addr add 192.168.86.16/24 broadcast 192.168.50.255 dev eth0 label eth0:1# 给windows 设置ipv4 的ip 192.168.86.88,要在wsl中访问宿主机就用此ipnetsh interface ip add address "vEthernet (WSL)" 192.168.86.88 255.255.255.0
通过以上方式就能零时的设置windows 10 方法wsl2 的ip,和wsl2访问windows 10 的ip。
由于每次电脑重启后上面的ip都会失效,所以可以将上面的脚本放在一个.bat文件中,并设置为开机启动执行即可。不行你们试试,效果很好。
? ? 扫码关注获后获取更多精彩内容!!!!❤️ ❤️