专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

circleci/docker-gc Docker 镜像 - 轩辕镜像

docker-gc
circleci/docker-gc
用于执行Docker镜像缓存LRU垃圾回收的工具
6 收藏0 次下载activecircleci镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Docker镜像缓存LRU垃圾回收代理

镜像概述

简介

Docker镜像缓存LRU垃圾回收代理(以下简称“镜像缓存代理”)是一款轻量级工具,通过LRU(最近最少使用)算法自动管理Docker镜像缓存,识别并回收不再需要的镜像文件,释放磁盘空间,避免因缓存膨胀导致的存储资源耗尽问题。

主要用途
  • 自动清理Docker宿主机上长期未使用的镜像缓存
  • 基于访问频率动态控制缓存占用空间
  • 保障Docker环境存储资源的稳定可用
  • 降低手动清理镜像的运维成本

核心功能与特性

LRU策略回收
  • 采用LRU算法优先删除最近最少访问的镜像,保留高频使用镜像
  • 基于Docker镜像元数据(如最后访问时间、创建时间)计算回收优先级
智能缓存控制
  • 支持设置最大缓存占用空间阈值,超过阈值自动触发清理
  • 可配置最小保留镜像数量,避免误删基础依赖镜像
自动化运维
  • 支持定时周期检查(如每小时/每天),无需人工干预
  • 实时监控缓存增长趋势,提前触发清理动作
安全操作保障
  • 仅删除未被容器引用的镜像,避免影响运行中服务
  • 支持配置排除规则,保护核心业务镜像(如指定镜像名、标签)
轻量级设计
  • 无额外依赖,直接通过Docker API与宿主机交互
  • 资源占用低(内存<50MB,CPU使用率<5%)

使用场景与适用范围

CI/CD流水线环境
  • 解决因频繁构建/拉取镜像导致的缓存堆积问题
  • 保障构建节点磁盘空间稳定,避免流水线中断
多项目开发环境
  • 清理不同项目遗留的临时镜像,释放开发机存储资源
  • 避免因镜像缓存过大导致的Docker服务异常
生产环境边缘节点
  • 在资源受限的边缘设备(如IoT网关、边缘服务器)中控制镜像存储
  • 保障核心业务镜像优先留存,提升系统稳定性
容器化测试环境
  • 自动化清理测试过程中产生的临时镜像,降低测试环境维护成本
  • 确保测试环境存储状态一致,减少环境差异导致的测试偏差

使用方法与配置说明

快速启动(docker run)
bash
docker run -d \
  --name image-cache-agent \
  --restart always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e MAX_CACHE_SIZE="20GB" \
  -e CHECK_INTERVAL="3600" \
  -e MIN_RESERVE_COUNT="5" \
  -e EXCLUDE_IMAGES="nginx:latest,mysql:8.0" \
  image-cache-lru-agent:latest
Docker Compose配置
yaml
version: '3.8'
services:
  image-cache-agent:
    image: image-cache-lru-agent:latest
    container_name: image-cache-agent
    restart: always
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock  # 挂载Docker socket以访问Docker API
    environment:
      - MAX_CACHE_SIZE=15GB  # 最大缓存占用空间
      - CHECK_INTERVAL=1800  # 检查间隔(秒),默认3600秒
      - MIN_RESERVE_COUNT=3  # 最小保留镜像数量,默认10
      - EXCLUDE_IMAGES=redis:alpine,ubuntu:22.04  # 排除的镜像(逗号分隔)
      - FORCE_CLEAN_ON_START=true  # 容器启动时是否立即执行一次清理
      - LOG_LEVEL=info  # 日志级别:debug/info/warn/error
    networks:
      - docker-network

networks:
  docker-network:
    driver: bridge
环境变量参数说明
环境变量名描述类型默认值示例值
MAX_CACHE_SIZE允许的最大缓存占用空间字符串10GB"20GB"、"5000MB"
CHECK_INTERVAL缓存检查周期(秒)整数36001800(30分钟)
MIN_RESERVE_COUNT清理后至少保留的镜像数量整数105
EXCLUDE_IMAGES不参与清理的镜像(名称:标签,逗号分隔)字符串空"nginx:latest,alpine:*"
FORCE_CLEAN_ON_START容器启动时是否立即执行清理布尔falsetrue
DELETE_UNUSED_DAYS超过指定天数未使用的镜像强制删除整数3014(2周)
LOG_LEVEL日志输出级别字符串infodebug
DRY_RUN仅模拟清理操作,不实际删除镜像布尔falsetrue
高级配置示例
场景1:CI/CD节点配置
bash
docker run -d \
  --name ci-image-agent \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e MAX_CACHE_SIZE="50GB" \
  -e CHECK_INTERVAL="1800" \
  -e MIN_RESERVE_COUNT="3" \
  -e DELETE_UNUSED_DAYS="1" \
  -e EXCLUDE_IMAGES="jenkins/jnlp-agent:latest" \
  -e LOG_LEVEL="warn" \
  image-cache-lru-agent:latest

说明:CI节点每日构建产生大量临时镜像,配置1天未使用即清理,保留核心构建代理镜像

场景2:生产边缘节点配置
bash
docker run -d \
  --name edge-image-agent \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e MAX_CACHE_SIZE="10GB" \
  -e CHECK_INTERVAL="86400" \
  -e MIN_RESERVE_COUNT="8" \
  -e EXCLUDE_IMAGES="edge-gateway:prod,data-collector:*" \
  -e DRY_RUN="true" \
  image-cache-lru-agent:latest

说明:边缘节点存储资源有限,配置每日检查,先通过DRY_RUN验证清理策略,排除生产核心镜像

注意事项

  1. 权限要求:容器需挂载/var/run/docker.sock以获取Docker API访问权限,生产环境建议通过Docker用户组限制权限,避免直接使用root用户。

  2. 数据安全:首次部署建议启用DRY_RUN=true验证清理结果,确认无误后再关闭模拟模式。

  3. 排除规则:核心业务镜像务必加入EXCLUDE_IMAGES,避免因LRU误判导致服务不可用。

  4. 性能影响:清理操作可能短暂占用磁盘I/O,建议在业务低峰期配置检查间隔(如凌晨2点)。

  5. 版本兼容性:支持Docker Engine 18.09+版本,低版本可能存在API兼容性问题。

查看更多 docker-gc 相关镜像 →
circleci/circleci-cli logo
circleci/circleci-cli
by CircleCI
认证
CircleCI CLI是CircleCI的命令行工具,用于本地运行、测试和管理CircleCI工作流,支持配置验证、作业执行、上下文管理等功能,可通过Docker镜像便捷使用,无需本地安装依赖。
95M+ pulls
上次更新:1 个月前
circleci/picard logo
circleci/picard
by CircleCI
认证
此镜像仅供内部使用,并非面向客户的便利镜像。
710M+ pulls
上次更新:5 天前
circleci/runner logo
circleci/runner
by CircleCI
认证
CircleCI Runner 1.X(Launch Agent)镜像已不再支持CircleCI云,用户应改用circleci/runner-agent:machine-3镜像在Docker容器中运行runner机器作业。
55M+ pulls
上次更新:11 个月前
circleci/runner-agent logo
circleci/runner-agent
by CircleCI
认证
CircleCI运行器的机器模式,支持CI/CD任务运行
1100K+ pulls
上次更新:5 天前
circleci/runner-init logo
circleci/runner-init
by CircleCI
认证
暂无描述
1M+ pulls
上次更新:20 天前
circleci/logging-collector logo
circleci/logging-collector
by CircleCI
认证
暂无描述
11M+ pulls
上次更新:5 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
circleci/docker-gc
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429