
一、安装
有关 harbor 安装的教程查看这篇文章:https://elowen.blog.csdn.net/article/details/157977116?spm=1011.2415.3001.5331
有关 harbor 的讲解看这篇文章:https://elowen.blog.csdn.net/article/details/157977346?spm=1011.2415.3001.5331
二、备份与迁移
首先我们要知道,harbor 备份和迁移其实是一个事
核心步骤:在目标端(备份地址or迁移地址)再下载安装一个harbor,因为harbor与harbor之间是可以进行镜像之间的 push or pull 的。
1.安装
有关 harbor 安装的教程查看这篇文章:https://elowen.blog.csdn.net/article/details/157977116?spm=1011.2415.3001.5331
2. 添加目的端
首先选择 仓库管理

点击 新建目标

开始输入对应的信息

1. 提供者(Provider)
- 含义:指定远程镜像仓库的类型。
- 作用 :当前选择的是
Harbor,表示目标是另一个 Harbor 实例;也可以选择其他类型,如 Docker Hub、AWS ECR、GCR 等,不同提供者的配置项会略有差异。
2. 目标名(Name)
- 含义 :为这个远程目标起一个易识别的名称,例如
Harbor-Production或Backup-Harbor-192.168.1.1。 - 作用:在后续创建复制规则时,通过这个名称快速选择目标,方便管理多个复制目标。
3. 描述(Description)
- 含义:可选的备注信息,用于说明这个目标的用途,例如 "用于生产环境镜像备份" 或 "测试环境同步目标"。
- 作用:帮助团队成员理解该目标的业务意义,避免配置混淆。
4. 目标 URL(Endpoint URL)
- 含义 :远程 Harbor 实例的访问地址,必须以
http://或https://开头,例如https://harbor.example.com或http://192.168.1.1:8080。 - 作用:指定当前 Harbor 向哪个地址推送 / 拉取镜像,是复制任务的核心地址。
- 注意 :如果目标 Harbor 使用 HTTPS,需确保地址协议为
https://,并注意端口号(默认 443,非默认需显式指定)。
5. 访问 ID(Access ID)
- 含义 :远程 Harbor 实例的登录账号,通常是具有镜像推送 / 拉取权限的用户名(如
admin或专用服务账号)。 - 作用:用于身份认证,让当前 Harbor 获得访问目标仓库的权限。
6. 访问密码(Access Secret)
- 含义:对应 "访问 ID" 的密码或密钥。
- 作用:与访问 ID 配合完成认证,确保只有合法的 Harbor 实例才能发起复制任务。
7. 验证远程证书(Verify Remote Cert)
- 含义 :当目标 URL 为
https://时,是否验证远程 Harbor 的 SSL 证书合法性。 - 作用 :
- 勾选(默认):验证证书是否由可信 CA 颁发、未过期、与域名匹配,提升安全性;
- 取消勾选:跳过证书验证,适用于目标 Harbor 使用自签名证书的场景(避免因证书不被信任导致连接失败)。
- 注意:生产环境建议保持勾选,仅在测试或内部自签名场景下取消。
8. 测试连接(Test Connection)
- 作用:点击后,Harbor 会使用当前填写的 URL、ID、密码尝试连接远程目标,验证配置是否正确、网络是否可达、认证是否成功。
- 价值:提前发现配置错误(如 URL 写错、密码错误),避免保存后才发现问题。
当你填写完成后,点击测试连接,出现绿条表示成功

接下来就可以去操作了。
3. 复制管理(备份与迁移)
接下来点击 复制管理

点击 新建规则

3.1 push 从远程服务器的harbor中拉取
首先我们看到第三行,在复制模式中,我们选择 Push-based(意思就是拉取镜像到我的这个harbor中)

1. 基础信息
- 名称:必填,为这条复制规则设置一个易识别的名称,例如 "同步生产镜像到备份仓库"。
- 描述:可选,用于备注规则的用途、范围或注意事项,方便团队成员理解。
2. 复制模式
- Push-based(推送模式):本地 Harbor 主动将镜像推送到远程目标仓库。适用于 "本地是源,远程是备份 / 分发节点" 的场景。
- Pull-based(拉取模式):远程目标仓库主动从本地 Harbor 拉取镜像。适用于 "远程是主节点,本地是源" 的场景。
3. 资源源过滤器
用于精准筛选需要复制的镜像资源,避免不必要的同步:
- 名称 :按镜像名称过滤,支持通配符(如
myapp/**)。 - Tag :按镜像标签过滤,可选择 "匹配" 或 "排除" 模式。例如,只复制带
prod标签的镜像,或排除带test标签的镜像。 - 标签:按 Harbor 自定义标签过滤,用于更细粒度的业务分组筛选。
- 资源:限定复制的资源类型,可选 "全部""镜像""Helm Chart" 等。
4. 目标配置
- 目标仓库:选择之前创建的远程复制目标(即上一步 "新建目标" 中配置的仓库)。
- 名称空间:指定镜像在远程目标中存放的项目 / 命名空间。留空则默认与源一致。
- 仓库扁平化:控制镜像在远程仓库中的路径结构。"替换级" 表示按层级替换,避免目录嵌套过深,使远程仓库结构更清晰。(正常选择:无替换)
5. 触发模式
定义复制任务的执行时机:
- 手动:仅在用户手动触发时执行复制。
- 定时 :按 cron 表达式定期执行(如
0 0 2 * * *表示每天凌晨 2 点)。 - 事件驱动:当源镜像有新推送或标签更新时,自动触发复制,实现实时同步。
6. 带宽与选项
- 带宽 :限制复制任务的带宽占用,单位为 Kbps。设置为
-1表示不限制带宽,充分利用网络资源。 - 覆盖:勾选后,如果远程目标中已存在同名同标签的镜像,将强制覆盖;未勾选则会跳过已存在的镜像,避免覆盖重要数据。
7. 操作按钮
- 取消:放弃当前配置,返回上一级界面。
- 保存:保存当前规则,使其生效。
典型使用场景
- 灾备备份:创建 Push-based 规则,将生产 Harbor 的关键镜像定时同步到备份 Harbor。
- 多环境分发:通过事件驱动模式,将测试通过的镜像自动同步到预生产环境。
- 跨地域部署:配置 Pull-based 规则,让各地域的 Harbor 从中心仓库拉取镜像,实现就近访问。
例子:
比如现在,我要从 远程服务器 192.168.133.133 中拉取 项目 ambari 下的 k8s 中的所有镜像,并且是手动拉取就好了,那么我的选择:

其中,目标仓库选择 133 ,如果没得选择,说明你还没有把 目标 服务器 添加进去。
3.2 pull 从远程服务器的harbor中拉取

一样的,无非就是源仓库地址先选好
三、关于定时驱动

在触发模式中,有三个选项,分别是 手动、定时、事件驱动。
1. 手动(Manual)
- 触发方式:仅在用户手动点击 "执行" 按钮时,才会启动复制任务。
- 特点:完全由人工控制,不会自动执行。
- 适用场景 :
- 新规则配置后的首次测试,验证复制流程是否正常。
- 临时需要同步一批镜像,无需定期执行。
- 特殊场景下的应急同步(如目标仓库修复后)。
2. 定时(Scheduled)
- 触发方式 :根据用户配置的 Cron 表达式,在指定的时间点自动执行复制任务。
- 特点:周期性、可预测,适合固定频率的同步需求。
- 适用场景 :
- 每日 / 每周的镜像备份,确保目标仓库始终有最新的关键镜像。
- 业务低峰期(如凌晨)执行大体积镜像复制,避免影响白天业务。
- 合规性要求下的定期镜像同步审计。
例如以下: 每天凌晨 1 点 开始执行复制任务

3. 事件驱动(Event-driven)
- 触发方式:当源 Harbor 中发生特定事件(如推送新镜像、更新标签、删除镜像)时,自动触发复制任务。相当于同步任务。
- 特点:实时响应,保证源与目标仓库的镜像状态高度一致。
- 适用场景 :
- 开发 / 测试 / 生产环境的镜像流转,确保新构建的镜像能及时同步到下游环境。
- 多地域部署架构中,中心仓库的镜像更新后,自动同步到各边缘节点。
- 对镜像时效性要求高的业务场景(如 CI/CD 流水线)。
四、关于选项

1. 覆盖(Override)✅
- 含义 :当目标仓库中已存在同名、同标签的镜像时,是否用源仓库的镜像覆盖它。
- 作用 :
- 勾选后:强制覆盖目标镜像,确保目标仓库始终与源仓库保持一致。
- 不勾选:跳过已存在的镜像,避免误覆盖重要数据。
- 注意:生产环境需谨慎使用,防止覆盖关键业务镜像。
2. 分块复制(Chunked replication)📦
- 含义:将大镜像文件拆分为多个小块(chunk)进行传输,而非一次性传输整个文件。
- 作用 :
- 提升大镜像复制的成功率,避免因网络波动导致整个传输失败。
- 支持断点续传,中断后可从断点继续,无需从头开始。
- 降低单次传输的内存和带宽占用,适合网络条件一般或大镜像场景。
- 适用场景:复制 GB 级别的大镜像,或网络不稳定的跨地域复制。
3. 启用规则(Enable rule)⚙️
- 含义:是否立即启用这条复制规则。
- 作用 :
- 勾选后:规则保存后立即生效,按触发模式执行复制任务。
- 不勾选:规则保存后处于禁用状态,需手动启用后才会执行。
- 适用场景:先配置好规则,待网络调整、目标仓库准备就绪后再启用,避免过早执行。
配置建议
- 若需确保目标仓库镜像始终最新 → 勾选「覆盖」。
- 若复制大镜像或网络不稳定 → 勾选「分块复制」。
- 若需延后执行 → 先不勾选「启用规则」,待时机成熟后手动启用。
END
如果觉得这份基础知识点总结清晰,别忘了动动小手点个赞👍,再关注一下呀~ 后续还会分享更多有关开发问题的干货技巧,同时一起解锁更多好用的功能,少踩坑多提效!🥰 你的支持就是我更新的最大动力,咱们下次分享再见呀~🌟