Skip to content

Harbor入门

1. Harbor介绍

Harbor是一个由VMware公司开源、并已毕业的云原生计算基金会(CNCF)顶级项目,专为企业级场景设计的容器镜像仓库,也是一个集安全、管理和高效分发于一体的云原生制品管理平台。常替代或补充公有镜像仓库,与Jenkins、GitLab CI等工具集成,作为CI/CD流程中的镜像中转站。

2. Harbor功能

Harbor在基础的Docker Registry之上,扩展了以下企业级核心功能:

  1. 基于角色的访问控制 (RBAC):支持细粒度的权限管理。可以按“项目”隔离资源,并为用户(如管理员、开发者、访客)赋予不同权限。同时支持集成企业现有的LDAP/AD等认证系统。
  2. 镜像安全与漏洞扫描:集成Trivy或Clair等扫描引擎,能自动检测镜像中的已知漏洞(CVE)。同时支持基于Notary的镜像签名与验证,确保镜像来源可信、内容未被篡改。
  3. 镜像复制与同步:支持在多个Harbor实例或不同仓库间自动或手动复制镜像。这对于跨地域分发、混合云部署和灾备至关重要。
  4. 高效的运维与管理:提供友好的图形化Web界面,便于管理。也提供完整的RESTful API,方便与CI/CD系统集成。还支持通过Webhook触发外部事件,以及垃圾回收等自动化运维功能。
  5. 多架构与多制品支持:不仅支持Docker镜像,还支持Helm Chart、CNAB、OCI等云原生制品

3. Harbor核心组件

组件基于/实现核心职责
Proxy (Nginx)Nginx统一 HTTPS 入口,按路径把 /api/* 转发至 Core,将 /v2/* 转发至 Registry
Core ServiceGoHarbor的"大脑"——REST API、UI后端、Token签发、RBAC、Webhook 触发
PortalAngular + Clarity前端 Web UI,纯静态资源,通过调用 Core 的 API 进行交互
RegistryDocker Distribution(增强版)真正存储镜像 Layer 和 Manifest,Harbor为其注入 Token 认证机制和 Webhook 回调
Job ServiceGo异步任务调度:负责镜像复制、GC(垃圾回收)、扫描触发,解耦耗时操作与实时 API
DB (PostgreSQL)PostgreSQL持久化存储用户、项目、权限、审计日志及镜像元数据
Redis-提供缓存、会话存储以及Job Service队列的消息中间件功能
Log Collector-汇总各组件的日志,便于集中排查问题