docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > Docker 虚拟磁盘清理

Docker 虚拟磁盘 (docker_data.vhdx) 清理的实现方法

作者:Feng_Sean

本文主要介绍了Docker 虚拟磁盘 (docker_data.vhdx) 清理的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

docker_data.vhdx 是 WSL2 的虚拟磁盘文件,其特性是只增不减。即使删除了容器和镜像,文件体积也不会自动缩小,必须手动进行清理和压缩。

建议按照以下步骤操作:

第一步:清理 Docker 内部无用数据

在终端执行以下命令,删除所有停止的容器、未使用的镜像、构建缓存和未使用的卷:

docker system prune -a --volumes 

⚠️ 注意:此操作不可逆。如果容器内有重要数据,请务必先确认或备份后再执行。

第二步:关闭 Docker 和 WSL

为确保磁盘文件未被占用,需完全关闭相关服务:

在终端执行:

wsl --shutdown 

确保 Docker Desktop 也完全退出(右键托盘图标选择退出)。

第三步:压缩 .vhdx 文件

以管理员身份打开 PowerShell,执行以下操作:

启动 diskpart 工具:

diskpart 

在 diskpart 提示符下依次执行(请根据实际路径修改):

select vdisk file="C:\Users\你的用户名\AppData\Local\Docker\wsl\disk\docker_data.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit

💡 提示:compact vdisk 步骤可能需要几分钟,请耐心等待完成。完成后重新启动 Docker Desktop,磁盘大小应恢复至实际使用量附近。

长期建议

如果 C 盘空间持续紧张,建议迁移虚拟磁盘位置:

  1. 打开 Docker Desktop。
  2. 进入 Settings → Resources → Advanced。
  3. 修改 Disk image location,将其指向非系统盘(如 D 盘)。

此举可一劳永逸地解决系统盘空间占用问题。

到此这篇关于Docker 虚拟磁盘 (docker_data.vhdx) 清理的实现方法的文章就介绍到这了,更多相关Docker 虚拟磁盘清理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文