Docker Vmmem进程在Windows 11 / 10中占用太多内存

最新资讯2年前 (2023)发布 AI观察员
857 0 0

在Windows机器上使用Windows子系统Linux2安装Docker的用户抱怨遇到vmmem进程消耗大量内存能力。根据这些受影响的用户的说法,这种内存消耗超出了图表,有时甚至达到99%(1.5-2 GB的RAM)!这是一个令人担忧的问题,因为这会显着降低受影响的系统的速度。因此,您应该按照这些修复程序来解决问题。

修复 1 – 让它运行

即使在关闭 WSL2 后,vmmem 进程仍将继续运行。这是正常行为,在结束 vmmem 进程后,vmmem 可能会继续消耗更多的系统资源,最长可达 1-2 分钟。因此,请等到该点停止并最终释放内存。

修复 2 – 关闭 WSL

阻止 Docker 使用过多内存的最佳方法是关闭 Linux 的 Windows 子系统。

注意 – 由于这会停止 WSL2,因此应小心仅在需要时运行此命令。因此,只有在您完成运行 Docker 并且您不再需要它时才运行它。

1.您可以从任何终端执行此操作,但必须使用管理权限打开它。因此,打开搜索框并键入“powershell”。

2.然后,右键单击“Windows PowerShell”,然后单击“以管理员身份运行”以管理员身份打开终端。

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
PowerShell 以管理员身份运行 最小值

3.现在,将其写在终端中并按回车键关闭Linux的Windows子系统。

wsl --shutdown

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
WSL 关机最小值 1

 

这将关闭 WSL2,最终,vmmem 将停止消耗大量内存。

修复3 –限制内存使用

还有另一种方法可以通过 WSL2 绑定内存使用情况。您可以创建新的配置文件或编辑现有配置文件。

步骤 1

1. 首先,您必须关闭 WSL2 配置。

2.因此,开始在搜索框中键入“电源外壳”。

3.然后,右键单击“Windows PowerShell”,然后单击“以管理员身份运行”以管理员身份运行终端。

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
PowerShell 以管理员身份运行 最小值

 

4. 在此之后,运行此代码以立即停止 WSL2。

wsl --shutdown

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
WSL 关机最小值 1

 

在此之后,您可以关闭PowerShell终端。

 

步骤 2

现在,您必须创建一个配置文件。所以,滑过这些点。

1. 搜索并打开记事本

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
记事本分钟

 

2.在那里,粘贴这两行。

[wsl2]
memory=2GB # Limits VM memory in WSL 2 up to 3GB
processors=2 # make the WSL 2 use up to two virtual processors

 

[注意 – 您可以在配置文件中看到,我们已将内存参数设置为 2 GB,虚拟处理器计数设置为 2。这些是修饰符,您可以根据需要设置它们。

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
ws 内存最小值

 

3.之后,单击“文件”,然后单击“另存为”以保存文件

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
另存为最小值

 

4. 现在,将文件命名为“%UserProfile%\.wslconfig”。

5.然后,单击“保存”以保存文件。

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存
保存配置最小值

 

在此之后,您可以关闭记事本

之后,打开 Docker。打开它后,您将看到重新启动虚拟机的选项。

因此,单击“”以重新启动它。

现在,vmmem 不会占用大量 RAM。

可选步骤 –

Linux 消耗更多内存来缓存文件。您可以使用此单行(从管理终端运行)来防止这种情况 –

echo 3 | sudo tee /proc/sys/vm/drop_caches

这应该会限制缓存存储并为主机释放更多 RAM。

修复 4 – 重新启动 LxssManager

您必须在PowerShell中重新启动LxssManager。

1. 以管理员身份打开 PowerShell 或任何其他终端。

2.然后,输入此命令并按 输入 重新启动LxssManager。

Restart-Service LxssManager

 

Docker Vmmem进程在Windows 11 / 10中占用太多内存

 

然后,再次检查RAM消耗。

修复5 –增加分配的资源

您可以轻松增加分配的 RAM、CPU 和交换,从而显著减少 vmmem 消耗。

1. 打开 Docker 设置 [ 您可能需要在 Linux 模式下运行 Docker VM 才能看到此设置。

2.在那里,转到“高级”设置。

3.在其中,您可以根据可用的系统资源调整CPU,内存和交换设置。

© 版权声明

相关文章

天猫U特购  京东优惠购        京东优惠    天猫优惠