Azure 中的专用 Docker 容器注册表简介

Azure 容器注册表是基于开源 Docker 注册表 2.0 的托管 Docker 注册表服务。 可以创建和维护 Azure 容器注册表来存储与管理专用的 Docker 容器映像。

可将 Azure 中的容器注册表与现有的容器开发和部署管道配合使用。 使用 Azure 容器注册表生成 (ACR Build) 在 Azure 中生成容器映像。 可以通过源代码提交和基础映像更新生成触发器按需生成或完全自动生成。

有关 Docker 和容器的背景信息,请参阅 Docker 概述

用例

将 Azure 容器注册表中的映像提取到各种部署目标:

开发人员还可以在执行容器开发工作流的过程中将内容推送到容器注册表。 例如,通过持续集成和部署工具(如 Azure DevOps ServicesJenkins)将目标设置为容器注册表。

关键概念

  • 注册表 - 在 Azure 订阅中创建一个或多个容器注册表。 注册表以三种 SKU 形式提供:基本、标准和高级,每一种都支持 Webhook 集成、通过 Azure Active Directory 进行注册表身份验证,以及删除功能。 在与部署相同的 Azure 位置创建注册表,充分利用容器映像的本地闭合网络存储。 完全限定的注册表名称采用以下格式:myregistry.azurecr.cn

    可以使用 Azure 标识、Azure Active Directory 支持的服务主体或提供的管理员帐户来控制访问(针对容器注册表)。 使用 Azure 命令行界面或标准的 docker login 命令登录到注册表。

  • 存储库 - 一个注册表包含一个或多个存储库,用于存储容器映像组。 Azure 容器注册表支持多级存储库命名空间。 使用多级命名空间可将特定应用相关的映像集合分组,或者将特定开发或运营团队的应用集合分组。 例如:

    • myregistry.azurecr.cn/aspnetcore:1.0.1 表示企业范围的映像
    • myregistry.azurecr.cn/warrantydept/dotnet-build 表示用于构建 .NET 应用、在保修部门之间共享的映像
    • myregistry.azurecr.cn/warrantydept/customersubmissions/web 表示一个 Web 映像,它已在客户提交应用中分组,由保修部门拥有
  • 映像 - 存储在存储库中,每个映像是兼容 Docker 的容器的只读快照。 Azure 容器注册表可以包含 Windows 和 Linux 映像。 可以控制所有容器部署的映像名称。 使用标准 Docker 命令可将映像推送到存储库,或者从存储库中提取映像。

  • 容器 - 容器定义软件应用程序及其在完整文件系统中包装的依赖项,包括代码、运行时、系统工具和库。 可以基于从容器注册表提取的 Windows 或 Linux 映像运行 Docker 容器。 在一台计算机上运行的容器共享操作系统内核。 Docker 容器完全可移植到所有主要 Linux 发行版、macOS 和 Windows。

后续步骤