Docker 系统修剪留下大量 (42GB) 图像数据
Docker system prune leaves a lot (42GB) of image data
我在构建 docker 图像时经常 运行 进入磁盘 space 问题(如 JS 错误 "ENOSPC: no space left on device
)。我已经习惯了 运行 docker system prune
来清理一些 space,但我觉得这有点太频繁了,我意识到可能有些地方没有按预期工作
在 运行 宁 docker system prune
我有以下 docker system df
输出
> docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 102 0 41.95GB 41.95GB (100%)
Containers 0 0 0B 0B
Local Volumes 53 0 5.254GB 5.254GB (100%)
Build Cache 383 0 0B 0B
似乎还有 42GB 磁盘 space 被图像使用(或者这是否指的是 docker 的某种“保留 space”?无论如何,如果这 42GB 是不知何故,它可以很好地解释为什么我的磁盘经常变得如此满
我在 macOS 上使用上述 docker system df
,当我打开我的 docker 应用 > 我看到的资源时
Disk image size:
120 GB (81.3 GB used)
我是不是漏掉了什么?
正如@Oo.oO 在他的评论中提到的那样,您可能拥有不被视为“悬挂”的图像,但您仍然没有将它们用于任何用途或没有使用它们的容器,如 [=14= 中所述] 解释悬空图像和未使用图像之间区别的答案是,悬空图像显然是放置同一图像的先前版本,现在可能显示为:
<none> <none>
虽然未使用的图像只是未使用的图像,但不属于“悬空”分类,这就是您的图像未被删除的原因。那时 运行 以下命令将解决问题:
docker system prune -a
如命令的帮助菜单中所述
-a, --all Remove all unused images not just dangling ones
尽管如果您只想删除未使用的 图像 (因为这是您的主要用例),您可以改用以下命令:
docker images prune -a
我在构建 docker 图像时经常 运行 进入磁盘 space 问题(如 JS 错误 "ENOSPC: no space left on device
)。我已经习惯了 运行 docker system prune
来清理一些 space,但我觉得这有点太频繁了,我意识到可能有些地方没有按预期工作
在 运行 宁 docker system prune
我有以下 docker system df
输出
> docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 102 0 41.95GB 41.95GB (100%)
Containers 0 0 0B 0B
Local Volumes 53 0 5.254GB 5.254GB (100%)
Build Cache 383 0 0B 0B
似乎还有 42GB 磁盘 space 被图像使用(或者这是否指的是 docker 的某种“保留 space”?无论如何,如果这 42GB 是不知何故,它可以很好地解释为什么我的磁盘经常变得如此满
我在 macOS 上使用上述 docker system df
,当我打开我的 docker 应用 > 我看到的资源时
Disk image size: 120 GB (81.3 GB used)
我是不是漏掉了什么?
正如@Oo.oO 在他的评论中提到的那样,您可能拥有不被视为“悬挂”的图像,但您仍然没有将它们用于任何用途或没有使用它们的容器,如 [=14= 中所述] 解释悬空图像和未使用图像之间区别的答案是,悬空图像显然是放置同一图像的先前版本,现在可能显示为:
<none> <none>
虽然未使用的图像只是未使用的图像,但不属于“悬空”分类,这就是您的图像未被删除的原因。那时 运行 以下命令将解决问题:
docker system prune -a
如命令的帮助菜单中所述
-a, --all Remove all unused images not just dangling ones
尽管如果您只想删除未使用的 图像 (因为这是您的主要用例),您可以改用以下命令:
docker images prune -a