如何解决如何使用 WSL2 后端获取 Docker 桌面以扩展内存消耗?
我增加了我的 .wslconfig 文件,以便为 WSL2 VM 分配最多 12GB 的 RAM,但是当我的进程使用相当多的 RAM 时,我的容器似乎仍然遇到 OOM 异常。探索 WSL,我发现 docker-desktop 似乎仍然以 1.1G 的 RAM 消耗为上限,尽管 VMMEM.exe 使用了大量内存,甚至更改了哪些容器正在运行和运行,但这个数字几乎没有变化更多的容器似乎不会改变这个数字:
从容器本身内部,我还看到容器“感知”自身使用的内存似乎也是错误的,但与 WSL 的观点截然不同;即在容器内同时运行 top
和 free -h
仍然显示相当不同的 RAM,即使是 1.1G WSL 报告。
最奇怪的是,无论程序在容器内如何运行,或者这些进程实际消耗了多少内存,容器中的空闲内存数量很少发生变化。 “可用总内存”通常会正确读取我分配给 WSL2 的数字,但“可用内存”似乎被锁定在 4.3GB,即使进程明显开始扩展到该可用分配并最终超出它。他们甚至开始遇到内核 OOM 错误,但“4178.0MB free”这个数字永远不会改变。
TLDR;如何使用 Docker Desktop 2 WSL2 后端准确查看容器的 RAM 使用情况,以及如何扩展 Docker Desktop 以允许 Docker 容器利用分配给 WSL2 的全部内存空间?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。