將多架構映像推送到 Amazon ECR 私有儲存庫 - Amazon ECR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將多架構映像推送到 Amazon ECR 私有儲存庫

您可以建立和推送 Docker 資訊清單清單,將多架構映像推送至 Amazon ECR 儲存庫。資訊清單列表是藉由指定一或多個映像名稱而建立的映像清單。在大多數情況下,資訊清單清單是從提供相同功能但適用於不同作業系統或架構的映像檔建立的。資訊清單不是必要選項。如需詳細資訊,請參閱 Docker 資訊清單

資訊清單列表可以像其他 Amazon ECR 映像一樣,在 Amazon ECS 任務定義或 Amazon EKS Pod 規格中提取或參考。

先決條件

將多架構 Docker 映像推送到 Amazon ECR 儲存庫
  1. 向打算推送映像的 Amazon ECR 登錄檔驗證您的 Docker 用戶端。所用的每個登錄檔皆必須取得身分驗證字符,字符有效期間為 12 個小時。如需詳細資訊,請參閱 Amazon ECR 中的私有登錄身份驗證

    若要向 Amazon ECR 登錄檔驗證 Docker,請執行 aws ecr get-login-password 命令。將身分驗證字符傳遞給 docker login 命令時,使用 AWS 的值作為使用者名稱並指定您要驗證的 Amazon ECR 登錄檔 URI。如果是向多個登錄進行驗證,您必須針對每個登錄重複此命令。

    重要

    若您收到錯誤,請安裝或升級至最新版本的 AWS CLI。如需詳細資訊,請參閱《AWS Command Line Interface 使用者指南》中的安裝 AWS Command Line Interface

    aws ecr get-login-password --region region | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
  2. 列出儲存庫中的映像,請確認映像標籤。

    aws ecr describe-images --repository-name my-repository
  3. 建立 Docker 資訊清單列表。manifest create 命令會驗證參考的映像是否已在您的儲存庫中,並在本機建立資訊清單。

    docker manifest create aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:image_one_tag aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:image_two
  4. (選用) 檢查 Docker 資訊清單列表。這可讓您確認資訊清單列表中參照的每個映像資訊清單的大小和摘要。

    docker manifest inspect aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository
  5. 將 Docker 資訊清單列表推送至您的 Amazon ECR 儲存庫。

    docker manifest push aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository