为什么建议在WSL2 + Docker Desktop Windows上运行,而不是直接在WSL2发行版上安装Docker?
看起来两者都可以,但我读到的方法是使用Docker Desktop,我想了解其中的原因。
谢谢
为什么建议在WSL2 + Docker Desktop Windows上运行,而不是直接在WSL2发行版上安装Docker?
看起来两者都可以,但我读到的方法是使用Docker Desktop,我想了解其中的原因。
谢谢
只要WSL2支持Docker Engine,它可以直接安装到大多数WSL2发行版中。 换句话说,尽管您可以为WSL2创建一个非常基本的BusyBox发行版(我已经做过了),但没有添加其他依赖项,您将无法在其中运行Docker。 当然,大多数主要的功能齐全的发行版都不会有问题。
开源
Kubernetes必须单独配置
安装需要更深入的Linux知识以及对WSL差异的理解。例如,Docker文档假定Systemd可用,并且包管理器一旦安装即启动Docker。但是,在WSL2上并非如此。
图像、容器、卷等放置在您已安装CE的WSL2分发版中。
使用CE版本可以复制许多Docker Desktop功能,但它需要手动操作。例如,如果您付出努力,就没有理由不能创建与其他WSL2实例共享的相同类型的“共享”环境。
始终可以安装所需的任何版本,并且计算机上的不同WSL2分发可以具有不同的Docker Engine / CE版本(如果需要)。
请注意,我与Docker没有任何关系或财务利益。
大多数用户最好使用Docker Desktop。 预先集成本身就是节省时间的工具。 对Linux不太熟悉的Windows用户几乎肯定应选择桌面版。
我知道付费模型似乎总是会让社区中的一些人感到不满,但我鼓励那些需要付费许可证的人考虑:
每年60美元,如果Docker Desktop比配置Docker Engine节省了半个小时的时间,它很可能已经为自己付款。 不是您每小时赚取120美元(或者也许您确实如此),但您的雇主希望您至少在这个范围内产生生产力。 您的雇主通常更愿意支付使您更有效率的工具,而不是让您自己开发。
如果您认为Docker是您组织的有价值的工具,则允许其持续开发和维护的财务支持对您的公司也有益。
com.docker.wsl-distro-proxy.exe - Application Error
The application was unable to start correctly (0xc0000142).
关于性能差异我不是很确定,但是在WSL2发行版中直接使用Docker时兼容性更好(无需使用Docker Desktop)。例如,我已经为此问题奋斗了将近一年,但仍未得到解决,非常麻烦。
如果您习惯于Linux环境,则在兼容性成为问题时,使用没有Docker Desktop的Docker可能是更好的选择。
Docker与WSL2结合使用,可以在Windows上运行Linux容器,因为它可以直接安装在WSL中。
当您构建应用程序时,可以在dockerfile中使用Linux镜像,而如果没有WSL2,则仅限于使用基于Windows的镜像,因为它安装在Windows内核上。
如果您想了解更多有关如何使其工作的信息,请查看https://codingfullstack.com/cloud/docker-installation-wsl2/。