随着容器技术的发展,镜像管理变得越来越重要。Harbor 是一个开源的企业级容器镜像仓库管理系统,提供了丰富的功能,如镜像存储、访问控制、镜像复制等。火山引擎镜像仓库是字节跳动提供的容器镜像仓库服务,提供了高性能、高可靠的镜像存储和分发服务。本文将介绍如何将 Harbor 镜像同步至火山引擎镜像仓库,以实现镜像的统一管理和分发。
注意
本文仅适用于 Harbor 2.11 以下版本。
将 Harbor 项目 harborporject
中的 Nginx 镜像文件推送至火山引擎中的镜像仓库实例。
harborproject
),并将需要同步的镜像文件推送到该项目中。
火山引擎镜像仓库的命名空间名称长度限制在 2 至 90 字符,若 Harbor 项目名称为 1 字符,则需在复制规则中 目标 > 命名空间 参数里手动配置大于等于 2 字符的命名空间名称。
登录 Harbor 控制台。
在左侧导航栏单击 系统管理 > 仓库管理。
在 仓库管理 页面,单击 新建目标,创建目标仓库。
配置参数。
说明
参数 | 说明 |
---|---|
提供者 | 选择 Docker Registry。 |
目标名 | 自定义目标仓库的名称。 |
目标 URL | 填写目标镜像仓库的域名。域名可在镜像仓库实例 概览 页面的 访问域名 处查看。填写本参数时需要在访问域名前添加 https:// 。正确的格式如 https://****-cn-beijing.cr.volces.com 。 |
访问 ID | 填写登录镜像仓库实例的用户名和密码。获取方法参见 标准版实例访问凭证。 |
访问密码 |
单击 确定,完成操作。
登录 Harbor 控制台。
在左侧导航栏单击 系统管理 > 复制管理。
在 复制管理 页面,单击 新建规则,创建镜像同步规则。
配置参数。
说明
本文仅介绍完成本次实践需要调整的参数,未说明的参数按照保持默认配置即可。
参数 | 说明 |
---|---|
名称 | 自定义复制规则名称,本文示例为 harbor2cr 。 |
复制模式 | 选择 Push-based。 |
名称 | 匹配的资源名称。本文需要的复制的资源为 harborproject 下的所有镜像,即可填写 harborproject/** 。 |
目标仓库 | 选择在 第一步 中已添加的目标镜像仓库实例。 |
目标 | 可选,本文填写 crnamespace 。不填写则在目标仓库中创建相同名称的命名空间。火山引擎镜像仓库中命名空间名称的长度限制为 2~90。如果 Harbor 项目名称为 1 字符,需要配置大于等于 2 字符的命名空名称。 |
单击 保存,完成操作。
harbor2cr
),单击 复制。在镜像仓库的目标实例、命名空间中查看镜像是否同步成功。本示例中,目标镜像实例 ****-test
的 crnamespace
命名空间中,已存在同步成功的 nginx
镜像文件,即从 Harbor 推送镜像至火山引擎镜像仓库成功。