Harbor x86-64和ARM64多架构镜像管理指南

Harbor ARM64 下载

  • Harbor v2.13.1的ARM64版离线安装包
  • Harbor v2.13.0的ARM64版离线安装包
  • Harbor v2.12.4的ARM64版离线安装包
  • Harbor v2.12.3的ARM64版离线安装包
  • Harbor v2.12.2的ARM64版离线安装包
  • Harbor v2.12.0的ARM64版离线安装包
  • Harbor v2.11.1的ARM64版离线安装包

前言

随着容器技术的广泛应用,容器镜像注册表作为容器化应用程序交付链中的关键组件,其重要性日益凸显。Harbor作为一个开源的企业级容器镜像注册表项目,提供了镜像存储、签名、扫描、复制和图表管理等功能,已成为云原生生态系统中不可或缺的基础设施组件。

Harbor最初由VMware中国研发中心于2016年创建,并于2018年7月捐赠给云原生计算基金会(CNCF),成为CNCF的孵化项目。2020年6月,Harbor正式从CNCF毕业,成为继Kubernetes、Prometheus、Envoy、CoreDNS、containerd和Fluentd之后的第七个毕业项目,标志着其在容器注册表领域的成熟度和广泛采用。

随着ARM架构服务器和设备的普及,容器镜像需要支持多种硬件架构,如x86-64 (amd64)和ARM64 (aarch64)。Harbor作为企业级容器镜像注册表,提供了完善的多架构镜像管理功能,使用户能够方便地存储、管理和分发适用于不同架构的镜像。本节将详细介绍Harbor的多架构镜像管理机制,特别是amd64和aarch64同名镜像的管理方式。

多架构镜像概述

多架构镜像(Multi-architecture Image)是一种特殊类型的容器镜像,它包含适用于不同硬件架构的多个镜像变体,但共享相同的镜像名称和标签。当用户拉取多架构镜像时,容器运行时会自动选择与当前系统架构匹配的镜像变体。这种机制使得开发者可以使用相同的镜像名称和标签,在不同架构的系统上运行容器,而无需关心底层架构的差异。

多架构镜像基于以下两个关键概念:

  1. 镜像清单(Image Manifest):描述单一架构镜像的元数据,包括镜像配置和层信息。每个架构变体都有自己的镜像清单。

  2. 清单列表(Manifest List):也称为"镜像索引"(Image Index),是一个高级清单,引用多个针对不同架构的镜像清单。清单列表包含每个架构变体的信息,如架构类型、操作系统、特性等。

在Docker和OCI(Open Container Initiative)规范中,多架构镜像通过清单列表实现。Docker称之为"Manifest List",而OCI称之为"Image Index",但概念基本相同。

Harbor中的多架构镜像支持

Harbor完全支持OCI规范和Docker规范的多架构镜像,允许用户推送、存储、管理和拉取多架构镜像。Harbor的多架构镜像支持主要体现在以下几个方面:

1. 存储机制

Harbor使用Registry组件存储镜像数据,包括多架构镜像。在存储层面,Harbor按照以下方式组织多架构镜像:

  • 架构变体存储:每个架构的镜像变体(如amd64、arm64)作为独立的镜像存储,包括其镜像层和镜像清单。
  • 清单列表存储:清单列表作为一个特殊的对象存储,引用各个架构的镜像清单。
  • 元数据存储:Harbor在数据库中存储多架构镜像的元数据,包括架构信息、大小、创建时间等。

这种存储机制确保了多架构镜像的完整性和一致性,同时优化了存储空间的使用。例如,如果不同架构的镜像共享相同的层,这些层只会存储一次。

2. 用户界面展示

Harbor的Web UI提供了友好的多架构镜像展示方式:

  • 镜像列表:在项目的镜像列表中,多架构镜像显示为一个条目,与单一架构镜像相同。
  • 镜像详情:在镜像详情页面,Harbor显示该镜像是多架构镜像,并列出所有支持的架构。
  • 架构信息:用户可以查看每个架构变体的详细信息,如大小、层数、创建时间等。
  • 漏洞信息:如果启用了漏洞扫描,Harbor会显示每个架构变体的漏洞扫描结果。

这种展示方式使用户能够直观地了解多架构镜像的组成和特性,便于管理和使用。

3. API支持

Harbor提供了完善的API支持多架构镜像的管理:

  • 镜像查询:API支持查询多架构镜像及其架构变体的信息。
  • 架构过滤:API支持按架构类型过滤镜像,便于查找特定架构的镜像。
  • 清单操作:API支持获取和操作清单列表和镜像清单。
  • 标签管理:API支持为多架构镜像添加、删除和管理标签。

这些API使得自动化工具和CI/CD流水线能够方便地管理多架构镜像,实现自动化构建、测试和部署。

amd64和aarch64同名镜像管理

Harbor管理amd64和aarch64同名镜像的方式有两种:一种是通过多架构镜像(推荐方式),另一种是通过不同的标签区分不同架构的镜像。

1. 通过多架构镜像管理

使用多架构镜像是管理amd64和aarch64同名镜像的推荐方式。在这种方式下,amd64和aarch64镜像作为同一个多架构镜像的不同变体存在,共享相同的名称和标签。

你可能感兴趣的:(#,Harbor,智算,架构,云原生,kubernetes,docker)