將碼頭映像推送到 Amazon ECR 私有存儲庫 - Amazon ECR

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

將碼頭映像推送到 Amazon ECR 私有存儲庫

您可以使用 docker push 命令將容器映像推送到 Amazon ECR 儲存庫。

Amazon ECR 也支援建立和推送用於多架構映像的 Docker 資訊清單清單。如需相關資訊,請參閱將多架構映像推送到 Amazon ECR 私有儲存庫

將 Docker 映像推送至 Amazon ECR 儲存庫

在您推送映像之前,Amazon ECR 儲存庫必須存在。如需詳細資訊,請參閱 建立 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. 如果打算推送映像的登錄檔內沒有您的映像儲存庫,請自行建立。如需詳細資訊,請參閱 建立 Amazon ECR 私有儲存庫來存放映像檔

  3. 找出要推送的本機映像。執行 docker images 命令,列出系統上的容器映像。

    docker images

    可用 repository:tag 值或映像 ID 從產生的命令輸出中找出映像。

  4. 在映像上標記要使用的 Amazon ECR 登錄檔、儲存庫和可選用的映像標籤名稱組合。登錄檔格式為 aws_account_id.dkr.ecr.us-west-2.amazonaws.com。儲存庫名稱應與您為映像建立的儲存庫名稱相符。如果省略映像標籤,系統將假設標籤為 latest

    以下範例將 ID e9ae3c220b23 的本機映像標記為 aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:tag

    docker tag e9ae3c220b23 aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:tag
  5. 使用 docker push 命令推送映像:

    docker push aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:tag
  6. (選用) 重覆執行 步驟 4步驟 5,套用任何其他標籤至映像,並將標籤推送至 Amazon ECR。