雪花台湾

Windows下想使用Linux环境,WSL、Docker、VM应该怎么选择?


其实这里只有两个大选择:WSL 1和VM。

WSL 1用的是Windows内核模拟的各种系统介面。虽然可以运行大部分Linux应用,但还是有不少依赖于内核的应用是无法正常运行的——例如Docker。另外WSL 1和Windows共用文件系统、网路,有些时候会比较头疼。

WSL 2/Docker本质上都是Hyper-V。WSL 2是一个轻量级的Hyper-V VM;Docker for Windows如果要跑Linux镜像,会安装运行一台运行Linux的Hyper-V虚拟机,用Hyper-V的管理工具是可以看到的。

所以除非你就运行某几个特定的软体并且在WSL 1上没有问题选择了用WSL 1,否则WSL 2、Docker、VM的选择说白了就是你选择用什么VM软体:


PS:技术的东西真的是少盯紧一点就落伍……win版的Docker Desktop从18.02开始,使用Windows容器模式,打开体验功能版本,可以直接使用内置的Linux内核跑Linux容器而无需在Hyper-V里面额外安装运行一台Linux VM。

具体官方教程见:

Windows and Linux Containers on Windows 10?

docs.microsoft.com

效果截图:

以下打脸内容保留,以作警醒。脸好疼……


挂个人,睁眼说瞎话也不怕打脸,真当我找不到第二台电脑么?

你是怎么测试的?如果切换到Windows容器模式,关闭这个VM,你运行个Linux容器给我看?


根据多年实际使用经验,前前后后用过 Virtualbox 和 VMware,都还不错,部分外设可能有兼容性问题,满足日常使用,甚至各种开发都问题不大。

就成熟度来看,建议用 Virtualbox 或 VMware,WSL 和 Docker 在 Windows 下的原生支持都不久。WSL 不太熟,Docker 的话只能在某些硬体和某些版本的 Windows 下才原生支持,限制比较多。

我现在也是在 Vmware 下装 Ubuntu,在里头再用 Docker。


开个fast ring然后用wsl2吧,同时满足你对wsl、docker、vm的需求。


有人说要打我脸,来吧

@木头龙


看完了所有的回答,我选择在Linux下虚拟windows,官方都有镜像下载,没有任何盗版风险,随时可用。

https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/


推荐阅读:
相关文章