如何在Docker Desktop WSL2中合理调整磁盘占用?
解决WSL2 Docker *.vhdx 磁盘占用过大的问题
1. 先清理WSL2内部空闲空间
首先彻底关闭所有WSL实例和Docker服务:
- 打开PowerShell,执行:
wsl --shutdown - 重新启动WSL环境:
wsl - 在WSL终端内执行以下命令,清理系统缓存并将空闲空间填充为零(这一步是为后续压缩虚拟磁盘做准备):
sudo apt-get clean sudo dd if=/dev/zero of=/tmp/zero.fill bs=1M sudo rm -f /tmp/zero.fill exit
2. 压缩WSL2虚拟磁盘文件
回到PowerShell,执行WSL自带的压缩命令处理Docker的虚拟磁盘:
wsl --manage docker-desktop-data --compact
注:如果你的vhdx文件不在默认路径,可先通过
wsl --list --verbose确认实例名称,再替换命令中的docker-desktop-data
3. 额外排查步骤
- 执行
docker system df检查Docker内剩余的镜像、容器、卷资源,若仍有未清理的卷,用docker volume prune彻底清理 - 避免在WSL2系统盘存放大文件,可在Docker Desktop设置中调整WSL集成配置,将Docker数据目录挂载到Windows其他大容量磁盘
内容的提问来源于stack exchange,提问作者Mr Davron
相关产品推荐
相关产品推荐

