選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

Amazon 中的私有登錄檔身分驗證 ECR

焦點模式
Amazon 中的私有登錄檔身分驗證 ECR - Amazon ECR

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

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

您可以使用 AWS Management Console、 AWS CLI或 AWS SDKs來建立和管理私有儲存庫。您可以使用這些方法來在映像上執行部分動作,例如列清單或刪除。這些用戶端使用標準 AWS 身分驗證方法。即使您可以使用 Amazon ECRAPI來推送和提取影像,您更有可能使用 Docker CLI或語言特定的 Docker 程式庫。

Docker CLI不支援原生IAM身分驗證方法。必須採取其他步驟,Amazon ECR才能驗證和授權 Docker 推送和提取請求。

下列各節詳述的登錄檔驗證方法可用。

使用 Amazon ECR登入資料協助程式

Amazon ECR提供 Docker 登入資料協助程式,可讓您在將影像推送和提取至 Amazon 時,更輕鬆地存放和使用 Docker 登入資料ECR。如需安裝和組態步驟,請參閱 Amazon ECR Docker Credential Helper

注意

Amazon ECR Docker 憑證協助程式目前不支援多重要素驗證 (MFA)。

使用授權字符

授權字符的許可權範圍與用來擷取身分驗證字符之 IAM 委託人的許可範圍相符。身分驗證字符用於存取您的IAM委託人有權存取且有效期為 12 小時的任何 Amazon ECR登錄檔。若要取得授權字符,您必須使用 GetAuthorizationTokenAPI操作來擷取包含使用者名稱AWS和編碼密碼的 base64 編碼授權字符。 AWS CLI get-login-password 命令透過擷取和解碼授權字符來簡化此過程,然後您可以匯入docker login命令進行驗證。

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

    重要

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

    • get-login-password (AWS CLI)

      aws ecr get-login-password --region region | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com
    • Get-ECRLoginCommand (AWS Tools for Windows PowerShell)

      (Get-ECRLoginCommand).Password | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com

使用HTTPAPI身分驗證

Amazon ECR支援 Docker 登錄檔 HTTP API。不過,由於 Amazon ECR 是私有登錄檔,您必須在每次HTTP請求時提供授權字符。您可以使用 的 -H選項新增HTTP授權標頭,curl並傳遞 get-authorization-token AWS CLI 命令提供的授權字符。

使用 Amazon 驗證 ECR HTTP API
  1. 使用 擷取授權字符, AWS CLI 並將其設定為環境變數。

    TOKEN=$(aws ecr get-authorization-token --output text --query 'authorizationData[].authorizationToken')
  2. 若要驗證 API,請將 $TOKEN變數傳遞至 -H的選項curl。例如,下列命令會列出 Amazon ECR儲存庫中的映像標籤。如需詳細資訊,請參閱 Docker Registry HTTPAPI參考文件。

    curl -i -H "Authorization: Basic $TOKEN" https://aws_account_id.dkr.ecr.region.amazonaws.com/v2/amazonlinux/tags/list

    其輸出如下:

    HTTP/1.1 200 OK
    Content-Type: text/plain; charset=utf-8
    Date: Thu, 04 Jan 2018 16:06:59 GMT
    Docker-Distribution-Api-Version: registry/2.0
    Content-Length: 50
    Connection: keep-alive
    
    {"name":"amazonlinux","tags":["2017.09","latest"]}

下一個主題:

登錄檔設定

上一個主題:

私有登錄檔
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。