docker desktop 限制内存和CPU等资源

打开用户目录

随便打开一个文件夹,在地址栏输入下面的内容,打开用户目录

%UserProfile%

编写配置文件

新建一个文件文件名如下,和上面的图片一样

.wslconfig

输入下面的内容

[wsl2]
processors=8
memory=8GB
swap=64GB
localhostForwarding=true
  • processors: 使用的核心数量,默认就是物理机核心数量
  • memory: 最大使用 8GB 内存
  • swap: 虚拟内存swap设置为64G(内存不够,硬盘来凑)
  • localhostForwarding: 默认值为 true,表示可以通过 localhost:port 从主机连接。

重启WSL

打开命令行

重启wsl

此时,docker desktop也会提示你重启,重启后资源占用就小了

wsl --shutdown

测试结果

随便打开一个容器,在里面用top命令查看资源情况,比如我用的gitlab

### 解决Docker Desktop内存占用过高的方法 #### 配置WSL 2内存量 为了控制Docker Desktop通过WSL 2使用的内存量,在`C:\Users\<YourUsername>\.wslconfig`文件中可以指定最大RAM量。此配置文件允许定义全局选项,适用于所有分发版。 ```ini [wsl2] memory=8GB # 设置分配给WSL的最大内存量 (可调整) processors=4 # 可选: 定义要分配的处理器核心数 ``` 上述设置会限制WSL 2使用不超过8 GB的物理内存[^1]。 #### 修改Docker Desktop资源限制 进入Docker Desktop界面,导航至**Settings > Resources > Advanced**部分来手动设定可用的CPU数量、总内存以及交换空间大小: - **CPUs**: 调整为适合系统的数值。 - **Memory**: 设定合理的上限值以防止过度消耗主机资源。 - **Swap**: 如果启用了虚拟内存,则应适当增加该参数以便更好地管理实际物理内存不足的情况。 保存更改并重启服务使新配置生效[^3]。 #### 清理不必要的容器服务 定期清理不再需要的镜像、网络卷可以帮助释放宝贵的系统资源。命令如下所示: ```bash docker system prune -a --volumes ``` 这条指令将会移除停止状态下的容器、未被标签标记的镜像以及孤立的网络连接,并且加上`--volumes`标志还会删除那些无用的数据卷[^2]。 #### 关闭不活跃的服务进程 当某些应用或工具在后台持续运行却很少被调用时,可以选择将其禁用或者仅按需启动它们。对于一些长期不用的应用程序考虑卸载也是不错的选择之一。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值