使用虚拟化技术中的 Hypervisor 而不是 WSL2 来运行 Docker

4
在我知道WSL之前,我使用VirtualBox和其他软件来使用Linux。但是WSL非常棒。WSL使用动态分配而不是静态分配内存,这真的很有用。当我听说WSL2可以在Docker中运行时,我非常高兴。但是结果并不如预期。一个名为vmmem的进程启动了WSL2后端,并使用了将近2GB的内存。即使我使用Hyper-V后端也不会分配那么多内存。即使使用wsl2 ubuntuwsl2 kali,同样的进程也会启动,但不会分配那么多内存。我在YouTube、Quora、Google上搜索了一切,但都没有找到解决方案。
我想要切换回Hyper-V后端,或者想要摆脱vmmem进程,请帮忙解决。
感谢所有仔细阅读这篇文章的人,特别感谢那位将会解决我的问题的人。

如果您需要,我可以提供任何其他信息。

1个回答

2
为了回答您的问题,Docker设置中有一个复选框(右键单击Docker图标>设置>常规),标记为“使用基于WSL 2的引擎”,它将实现您要寻找的功能。
但是,如果您想再次尝试WSL,则可以限制WSL可以分配的内存量。
如果您在%userprofile%中创建一个名为.wslconfig的文件,并将其内容设置为:
[wsl2]
memory=1GB

然而,WSL2与Docker存在一个持续的问题,似乎表明存在内存泄漏。以这种方式限制内存可能会导致不良副作用。


2
已经过去了一年,我正在安装Docker。在我的屏幕上,我看到“使用WSL2而不是Hyper-V(推荐)”...由于那个内存问题仍然存在,我觉得这可能不是推荐的选择。 - Brain2000

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接