使用容器注册表

容器注册表是一个存储和内容交付系统,保存命名的 Docker 映像,可在不同的标记版本中使用。

用户可以从以下来源连接到 Docker 注册表:

将镜像推送到容器注册表

在部署 Docker 映像之前,必须将该映像上传到容器注册表。该映像可以上传到Docker HubAzure 容器注册表 (ACR)或其他注册表。无论是推送到 Docker Hub、Azure 容器注册表还是任何其他注册表,都可以按照相同的步骤推送映像。如果您还没有 Azure 容器注册表,可以在推送步骤中创建一个。

  1. 打开 Docker Explorer,选择注册表组下的连接注册表...图标,然后按照提示操作。选择提供商(例如 Azure 或 Docker Hub)并提供连接到注册表的凭据。如果出现提示,请安装Azure 帐户扩展。

    连接到注册表

  2. 现在注册表将在Registries下可见。

    登记处

  3. (可选)标记图像。为了将映像上传到注册表,需要使用注册表名称标记映像,以便 docker Push 将其上传到正确的注册表。如果在尝试推送映像时未标记该映像,VS Code 会询问您想要将哪个注册表与该映像关联。

    • 您之前构建的映像出现在 Docker Explorer 的“Images”选项卡下。右键单击并选择标签...。

      标签图像

    • 指定新名称<your registry or username>/<image name>:<tag>并完成标记操作。例如,ACR 的新映像名称为 ,mainacr.azurecr.io/webapp6:latestDocker Hub 的新映像名称为myusername/webapp6:latest

  4. 该映像显示在 Docker 资源管理器中映像标签指向的注册表下的“映像”选项卡中。选择该图像并选择“推送”。如果尚未标记映像,系统会提示您选择要推送到的注册表,或创建新的注册表,并根据选择标记映像。

    推送图片

  5. 推送命令完成后,刷新镜像推送到的注册表节点,即可看到上传的镜像。

    刷新注册表

Docker 中心

这将连接到Docker Hub并列出给定帐户下的所有存储库和映像。选择此选项后,您将需要输入 Docker Hub 凭据。

 Docker 中心

对于 Docker Hub 注册表中的每个存储库,可以执行以下操作:

  • Pull 存储库:将给定存储库中的所有镜像复制到本地
  • 在浏览器中打开:打开浏览器并导航到 Docker Hub 上的给定存储库
  • 刷新:刷新存储库以反映更改

对于存储库中的每个标记图像,可以执行以下操作:

  • 拉取镜像:将最新版本的镜像复制到本地
  • 在浏览器中打开:打开浏览器并导航到 Docker Hub 上的给定映像

Azure 容器注册表

此选项需要Azure 帐户扩展能够连接到你的 Azure 帐户并显示所有不同的订阅和注册表。经过身份验证后, Azure节点将显示订阅以及每个订阅的注册表:

Azure 容器注册表

对于每个注册表,用户可以使用上下文菜单执行不同的操作:

Azure 注册表上下文菜单

  • 删除注册表:永久删除注册表
  • 在门户中打开:打开浏览器并导航到 Azure 门户中的注册表
  • 查看属性:以json格式打开注册表属性
  • 刷新:刷新注册表以反映更改

对于给定注册表中的每个存储库,可以执行以下操作:

Azure 存储库上下文菜单

  • Pull Repository:将给定存储库中的所有图像复制到本地
  • 删除存储库:永久删除存储库
  • 刷新:刷新存储库以反映更改

对于存储库中的每个标记图像,可以执行以下操作:

Azure 图像上下文菜单

  • Pull Image:将最新版本的镜像复制到本地
  • 复制完整标签:将完整标签复制到剪贴板
  • 复制图像摘要:将图像摘要(Docker 使用的 SHA256 哈希标识符)复制到剪贴板。有关图像摘要的更多信息,请参阅Docker 文档
  • 将映像部署到 Azure 应用服务:将映像部署到 Azure 应用服务,请参阅将映像部署到 Azure页面
  • 将映像部署到 Azure 容器应用程序:将映像部署到 Azure 容器应用程序,请参阅将映像部署到 Azure页面
  • 取消图像标签:取消图像标签
  • 删除图像:永久删除图像

GitLab

这将连接到您的GitLab帐户中的 Docker 注册表。选择此选项后,系统会要求您输入 GitLab 帐户凭据。

GitLab

对于 GitLab 注册表中的每个存储库,可以执行以下操作:

  • Pull Repository:将给定存储库中的所有图像复制到本地
  • 刷新:刷新存储库以反映更改

对于存储库中的每个标记图像,可以执行以下操作:

  • Pull Image:将最新版本的镜像复制到本地

下一步