
在云原生和容器化的浪潮中,Harbor 作为企业级的 Docker 镜像仓库,扮演着至关重要的角色。它不仅是镜像的 "存储柜",更是企业内部镜像分发、权限管控和安全合规的核心枢纽。本文将从核心作用、数据组成、优缺点,再到 Web 界面的各个模块,为你全面拆解 Harbor 的基础概念。
一、Harbor 是什么?核心作用有哪些?
Harbor 是由 VMware 开源的企业级容器镜像仓库,它在 Docker Registry 的基础上,增加了许多企业级必备的功能,让镜像的管理更加安全、高效和可控。
核心作用
- 镜像存储与分发:作为私有镜像仓库,存储和管理企业内部的 Docker/OCI 镜像,避免依赖公共 Hub,提升拉取速度和安全性。
- 权限与访问控制:细粒度的 RBAC 权限模型,支持用户、角色、项目级别的访问控制,确保只有授权人员才能操作镜像。
- 镜像复制与同步:支持跨仓库、跨地域的镜像复制(Push/Pull 模式),实现灾备、多活和就近访问。
- 安全与合规:内置漏洞扫描(Trivy)、内容签名和审计日志,帮助企业满足安全合规要求。
- 可扩展与集成:提供丰富的 API 和 Webhook,可与 CI/CD 流水线(如 Jenkins、GitLab CI)深度集成。
二、Harbor 的核心数据组成
要理解 Harbor 的备份、恢复和迁移,必须先清楚它的核心数据由哪几部分构成:
-
配置文件 :
harbor.yml- 位于 Harbor 安装目录,记录了所有关键配置,如访问地址、端口、存储路径、管理员密码等。
- 这是恢复 Harbor 时的 "蓝图",必须妥善备份。
-
数据库(PostgreSQL)
- 存储了所有元数据,包括项目、用户、角色、权限、镜像标签、复制规则等。
- 备份时通常使用
pg_dump工具导出 SQL 文件。
-
镜像存储(Registry)
- 实际的镜像 blob 数据,默认存储在
/data/registry目录下。 - 这部分数据量最大,是备份的重点,通常使用
rsync等工具进行增量备份。
- 实际的镜像 blob 数据,默认存储在
三、Harbor 的优缺点分析
优点
- 开源免费:完全开源,无授权费用,适合中小企业和大型企业自建。
- 企业级功能:权限管理、漏洞扫描、镜像复制等功能齐全,满足生产环境需求。
- 部署灵活:支持 Docker Compose 和 Kubernetes 部署,适配不同的基础设施。
- 活跃社区:由 CNCF 托管,社区活跃,更新频繁,问题响应快。
缺点
- 部署复杂度:相比简单的 Docker Registry,Harbor 依赖的组件更多(PostgreSQL、Redis、Nginx 等),部署和排错难度稍高。
- 资源消耗:在高并发场景下,对 CPU、内存和磁盘 IO 有一定要求。
- 学习成本:功能丰富意味着需要学习的配置项和操作流程更多。
四、Harbor Web UI 模块详解(结合你的截图)
Harbor 的 Web 界面直观易用,下面我们结合你提供的截图,逐一讲解各个模块的作用:
1. 项目管理(Projects)

- 作用:项目是 Harbor 中最核心的组织单元,所有镜像都归属于某个项目。
- 截图解析 :
- 你可以看到已创建的项目列表(如
base_deployment、k8s、library等),每个项目都有访问级别(公开 / 私有)、镜像仓库数等信息。 - 点击「新建项目」可以创建新的项目,设置访问级别、配额限制等。
- 你可以看到已创建的项目列表(如
- 核心操作 :
- 创建 / 删除项目
- 管理项目成员和角色
- 查看项目内的镜像和复制规则
2. 日志(Logs)

- 作用:记录 Harbor 中所有的操作事件,是审计和排错的重要依据。
- 截图解析 :
- 日志列表显示了用户名、资源、操作类型和时间戳。
- 例如,
harbor-jobservice用户的create操作通常对应复制任务的执行,admin用户的delete操作则是手动删除镜像或项目。
- 核心价值:通过日志可以追溯每一个操作的执行者和时间,确保环境的可审计性。
3. 系统管理(System Management)

这是一个下拉菜单,包含了多个高级管理模块:
- 用户管理(User Management)
- 管理 Harbor 的所有用户账号,包括创建、删除、修改密码和角色。
- 机器人账户(Robot Accounts)
- 创建用于自动化操作(如 CI/CD 流水线拉取 / 推送镜像)的机器人账户,避免使用个人账号。
- 仓库管理(Registries)
- 添加和管理目标镜像仓库,用于配置复制规则。
- 复制管理(Replication Management)
- 创建和管理镜像复制规则,实现跨仓库的镜像同步。
- 分布式分发(Distribution)
- 配置 Harbor 的分发策略,优化镜像拉取性能。
- 标签(Labels)
- 管理自定义标签,用于对镜像和项目进行分类和筛选。
- 项目定额(Project Quotas)
- 为项目设置存储配额,防止单个项目耗尽所有存储空间。
- 审查服务(Vulnerability Scanning)
- 配置漏洞扫描服务,对镜像进行安全扫描。
- 清理服务(Garbage Collection)
- 执行垃圾回收,删除未被使用的镜像层,释放存储空间。
- 任务中心(Job Center)
- 查看和管理所有后台任务,如复制任务、垃圾回收任务等。
- 配置管理(Configuration)
- 修改 Harbor 的全局配置,如邮件设置、认证方式、存储后端等。
五、总结与实践建议
Harbor 是一个功能强大的企业级镜像仓库,它的核心价值在于为企业提供了一个安全、可控、可扩展的镜像管理平台。在实际使用中,建议:
- 合理规划项目结构:根据业务线或团队划分项目,避免所有镜像都放在一个项目中。
- 启用安全功能:开启漏洞扫描和内容签名,定期扫描镜像,及时修复高危漏洞。
- 配置复制规则:将关键项目的镜像复制到备用仓库,实现灾备。
- 定期备份 :定期备份
harbor.yml、数据库和镜像存储目录,确保在故障时能快速恢复。
END
如果觉得这份基础知识点总结清晰,别忘了动动小手点个赞👍,再关注一下呀~ 后续还会分享更多有关开发问题的干货技巧,同时一起解锁更多好用的功能,少踩坑多提效!🥰 你的支持就是我更新的最大动力,咱们下次分享再见呀~🌟