在 Windows 中移动到 WSL 2 后分配给 docker 容器的内存
Memory allocation to docker containers after moving to WSL 2 in Windows
我最近在 Windows 上 WSL 2
上将我的 Docker 环境更新为 运行。
为了在以前的版本中设置容器的内存分配限制,我在 Settings->Resources->Advanced->Preferences
下的 Docker 桌面 GUI 中有选项来调整内存和 CPU 分配。
WSL 2 集成后,我找不到该选项。
我想我应该 运行 从现在开始我的 Linux 发行版中的所有内容,所以这是我能够找到的解决方案:
docker run -d -p 8081:80 --memory="256m" container_name
我不想每次 运行 设置一个容器时都必须设置一个标志。有没有办法永久设置内存分配?
为 WSL2 集成删除了内存和 CPU 设置。但是,从 Windows Build 18945 开始,有一个限制 WSL2 内存使用的解决方法。
创建一个 %UserProfile%\.wslconfig
文件来调整 WSL2 设置:
[wsl2]
memory=6GB # Any size you feel like
swap=0
localhostForwarding=true
运行 Get-Service LxssManager | Restart-Service
在管理员 Powershell (或重新启动) 并验证任务管理器中的 vmmem
使用率是否下降。
我最近在 Windows 上 WSL 2
上将我的 Docker 环境更新为 运行。
为了在以前的版本中设置容器的内存分配限制,我在 Settings->Resources->Advanced->Preferences
下的 Docker 桌面 GUI 中有选项来调整内存和 CPU 分配。
WSL 2 集成后,我找不到该选项。
我想我应该 运行 从现在开始我的 Linux 发行版中的所有内容,所以这是我能够找到的解决方案:
docker run -d -p 8081:80 --memory="256m" container_name
我不想每次 运行 设置一个容器时都必须设置一个标志。有没有办法永久设置内存分配?
为 WSL2 集成删除了内存和 CPU 设置。但是,从 Windows Build 18945 开始,有一个限制 WSL2 内存使用的解决方法。
创建一个 %UserProfile%\.wslconfig
文件来调整 WSL2 设置:
[wsl2]
memory=6GB # Any size you feel like
swap=0
localhostForwarding=true
运行 Get-Service LxssManager | Restart-Service
在管理员 Powershell (或重新启动) 并验证任务管理器中的 vmmem
使用率是否下降。