Docker

Docker Desktop 虚拟磁盘:项目结束了,空间却还在涨

Docker 镜像层、构建缓存和 VM 磁盘文件都在受管目录中,平时不容易在 Finder 里看清楚,但体积会增长得很快。

更新于:

阅读时长: 6 分钟

为什么会悄悄变大

每次 docker pull、docker build、compose 调试都会新增层数据。即使容器停止,缓存层和虚拟磁盘数据也常常继续保留。长期叠加后,会形成看不见但持续增长的磁盘占用。

Free Mac Space 如何定位

Free Mac Space 会扫描 ~/Library/Containers/com.docker.docker 与 ~/.docker,并优先展示最大目录,让你快速判断主要占用来自镜像层、构建缓存,还是其他 Docker 数据。

Free Mac Space 如何帮助清理

你可以针对明显过大的缓存目录执行清理。清理动作遵循回收站优先和路径白名单校验;如果路径解析后落在允许范围外(例如符号链接绕行),操作会被阻止。

安全边界

Docker 数据可能影响正在运行的开发环境。这个分类是先审查后清理模式,必须由用户显式选择,不做后台自动删除。

Free Mac Space 扫描路径

  • ~/Library/Containers/com.docker.docker
  • ~/.docker

建议的月度检查步骤

  • 在项目阶段结束后,优先检查 Docker 大目录。
  • 避免误删当前正在使用的本地服务数据。
  • 清理后再扫描一次,核对实际回收结果。

操作步骤(HowTo)

  1. 1. 识别 Docker 的增长来源

    每次 docker pull、docker build、compose 调试都会新增层数据。即使容器停止,缓存层和虚拟磁盘数据也常常继续保留。长期叠加后,会形成看不见但持续增长的磁盘占用。

  2. 2. 确认扫描覆盖路径

    Free Mac Space 会扫描 ~/Library/Containers/com.docker.docker 与 ~/.docker,并优先展示最大目录,让你快速判断主要占用来自镜像层、构建缓存,还是其他 Docker 数据。 重点路径:~/Library/Containers/com.docker.docker、~/.docker。

  3. 3. 先看安全边界再执行动作

    Docker 数据可能影响正在运行的开发环境。这个分类是先审查后清理模式,必须由用户显式选择,不做后台自动删除。

  4. 4. 按先审查后清理流程执行

    你可以针对明显过大的缓存目录执行清理。清理动作遵循回收站优先和路径白名单校验;如果路径解析后落在允许范围外(例如符号链接绕行),操作会被阻止。

  5. 5. 复核动作 1

    在项目阶段结束后,优先检查 Docker 大目录。

  6. 6. 复核动作 2

    避免误删当前正在使用的本地服务数据。

  7. 7. 复核动作 3

    清理后再扫描一次,核对实际回收结果。

常见问题

  • Docker 这类占用通常来自哪里?

    主要来源包括:容器层缓存、构建缓存、虚拟磁盘文件。每次 docker pull、docker build、compose 调试都会新增层数据。即使容器停止,缓存层和虚拟磁盘数据也常常继续保留。长期叠加后,会形成看不见但持续增长的磁盘占用。

  • 这篇文章建议重点查看哪些路径?

    建议优先检查这些路径:~/Library/Containers/com.docker.docker、~/.docker。Free Mac Space 会扫描 ~/Library/Containers/com.docker.docker 与 ~/.docker,并优先展示最大目录,让你快速判断主要占用来自镜像层、构建缓存,还是其他 Docker 数据。

  • 如何在不增加误删风险的前提下处理?

    你可以针对明显过大的缓存目录执行清理。清理动作遵循回收站优先和路径白名单校验;如果路径解析后落在允许范围外(例如符号链接绕行),操作会被阻止。 Docker 数据可能影响正在运行的开发环境。这个分类是先审查后清理模式,必须由用户显式选择,不做后台自动删除。

  • 月度复查时应该怎么执行?

    在项目阶段结束后,优先检查 Docker 大目录。;避免误删当前正在使用的本地服务数据。;清理后再扫描一次,核对实际回收结果。

继续执行对应方案

如果你已完成阅读,可直接进入「Docker 磁盘占用清理(Mac)」按步骤执行。

查看对应场景方案

更多隐蔽占用案例

Xcode

Xcode 的 DerivedData 和 DeviceSupport:最常见的隐藏巨头

Xcode 会在构建产物和模拟器/设备支持文件里悄悄累积几十 GB。本文讲清楚它为什么膨胀,以及如何在不影响当前项目的前提下清理。

阅读文章

Homebrew

Homebrew 缓存目录:安装很快,历史缓存更快变大

Homebrew 会保留下载包和元数据缓存,版本升级后仍可能长期存在,是非常典型的“看不见但可安全处理”的空间来源。

阅读文章

JavaScript 工具链

npm / pnpm / Yarn / Bun 缓存:多项目机器上的隐形重复占用

包管理器为了加速安装会积极缓存。在多项目、多工具链并存的 Mac 上,即使项目删掉了,缓存也可能持续占用大量空间。

阅读文章