You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何智能清理Docker对象且保留构建缓存以降低构建耗时

Docker 构建机安全清理方案(保留构建缓存)

虚悬镜像清理操作说明

你提到的定时任务命令 docker rmi $(docker images -q -f dangling=true) 完全不会删除构建缓存,可以放心执行。
虚悬镜像指没有标签、也未被任何其他镜像引用的顶层镜像,通常由构建失败、镜像重复打标产生,和Docker构建过程生成的中间缓存层是完全独立的对象类型,清理虚悬镜像不会对构建加速效果产生任何负面影响。

其他可安全执行的清理操作

以下操作均不会触及构建缓存,可直接加入定时任务执行:

  • 清理已停止的冗余容器
    执行命令:docker container prune -f
    构建过程中产生的临时停止容器不会被后续构建复用,清理后无任何副作用。
  • 清理未被任何容器关联的匿名卷
    执行命令:docker volume prune -f
    匿名卷多为临时运行容器时自动生成的存储对象,没有容器关联时无留存价值,也不涉及构建缓存数据。
  • 清理未被使用的自定义网络
    执行命令:docker network prune -f
    冗余自定义网络仅占用极小的系统资源,清理后不会对构建流程产生影响。
  • (可选)按保留周期裁剪旧构建缓存
    如果后续出现构建缓存占用磁盘过高的情况,可仅清理超过指定时间未被使用的旧缓存,比如保留最近7天的构建缓存:
    执行命令:docker builder prune -f --filter "until=168h"

高风险操作需规避

以下操作会误删构建缓存,导致构建耗时大幅上升,需避免执行:

  • 不要使用带 -a 参数的镜像清理命令,比如 docker image prune -a,会删除所有未被使用的镜像,包含构建中间缓存层
  • 不要执行不带过滤规则的 docker system prune,默认会清理所有未被使用的Docker对象,包含构建缓存

内容的提问来源于stack exchange,提问作者Ezop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 15:18:02