1.1 Harbor 概述:企业级镜像仓库的核心定位

Harbor 是由 VMware 开源、目前由 CNCF(云原生计算基金会)孵化的企业级容器镜像仓库项目。它解决了 Docker Registry 原生版本在权限管理、安全扫描、多租户隔离、异地复制等企业场景下的功能缺失,成为国内 DevOps 和云原生平台中最广泛使用的镜像仓库方案。

一句话定义:Harbor 是一个集认证、授权、安全扫描、复制与回收于一体的企业级 OCI(Open Container Initiative)镜像仓库,是 DevOps 流水线中制品管理的核心枢纽。

1.1.1 Harbor 核心功能矩阵

功能模块 能力描述 企业价值
多租户与 RBAC 基于项目(Project)隔离,支持 LDAP/AD/OIDC 集成,细粒度角色权限 不同团队共用仓库,互不干扰,审计合规
镜像复制(Replication) 跨 Harbor 实例或跨 Registry 的自动/手动同步,支持推拉模式 灾备、多数据中心分发、边缘节点同步
漏洞扫描(Scanner) 集成 Trivy/Clair 等扫描器,自动检测镜像 CVE 漏洞 阻断高危漏洞镜像进入生产环境
镜像清理与回收 基于标签、时间、引用关系的自动清理策略 + GC 空间回收 控制存储成本,避免仓库膨胀
审计日志 记录所有用户操作、镜像推送/拉取/删除事件 满足 SOC2、PCI-DSS 等合规审计要求
Webhook 与事件驱动 镜像推送/扫描完成/清理完成等事件触发外部回调 与 CI/CD 流水线、告警系统联动
垃圾回收(GC) 清理未被任何标签引用的 Blob 层数据,释放磁盘空间 彻底回收存储,避免“只删标签不删数据”

1.1.2 Harbor 在 DevOps 中的定位

在标准 DevOps 流水线中,Harbor 处于“构建-制品-部署”的中间枢纽位置。它不仅是镜像的存储中心,更是安全门禁、版本策略和分发调度的执行者。

Harbor 在 DevOps 流水线中的枢纽定位 CI 持续集成 代码编译 镜像构建 单元测试 docker push Harbor 镜像仓库 多租户隔离 · RBAC 权限 漏洞扫描 · 安全门禁 自动清理 · 异地复制 审计日志 · Webhook docker pull CD 持续部署 K8s 滚动更新 蓝绿/金丝雀 生产发布 Harbor 策略引擎(本课程核心) 标签保留策略 · 自动清理规则 · 存储配额 · 生命周期管理 → 实现镜像自动归档与存储成本控制 后端存储:S3 / MinIO / NFS / 阿里云OSS / 华为OBS 支持对象存储、分布式文件系统、本地卷
课程聚焦:本工程案例将重点围绕图中“策略引擎”层展开——通过 Harbor 的标签保留策略、自动清理规则、Webhook 事件驱动和 GC 回收机制,构建一套可自动执行的镜像归档与清理方案,解决企业仓库存储膨胀和版本泛滥的痛点。

1.1.3 为什么需要自动归档与清理?

随着 DevOps 流水线频繁迭代,镜像仓库会以每天数百甚至上千个版本的速度增长。如果不加干预,将引发以下问题:

  • 存储成本失控:每个镜像包含多层 Blob 数据,保留所有历史版本会迅速耗尽磁盘或对象存储配额。
  • 检索效率下降:仓库中充斥大量过时、废弃的镜像标签,开发人员难以找到有效版本。
  • 安全风险累积:旧版本镜像可能包含未修复的 CVE 漏洞,持续存在于仓库中构成攻击面。
  • 合规审计困难:缺乏自动化的生命周期管理,无法证明哪些镜像被保留、哪些被清理。

Harbor 内置的自动清理机制正是为解决这些问题而设计。本课程将基于标准模板,一步步构建从策略定义、规则编排到清理执行与监控的完整工程方案。

1.1.4 本章知识结构

小节 核心内容 学习目标
1.1 Harbor 概述 Harbor 定义、核心功能、DevOps 定位 理解 Harbor 在企业级场景中的角色
1.2 自动归档与清理场景分析 典型痛点、清理策略分类、归档目标 明确本课程要解决的具体问题
1.3 标准模板驱动方案设计 模板化策略、规则引擎、执行流程 掌握方案的整体架构与设计思路
1.4 实验环境与前置准备 Harbor 部署、存储配置、客户端工具 搭建可复现的实验环境