將映像上傳至 Amazon Elastic Container Registry - AWS Marketplace

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

將映像上傳至 Amazon Elastic Container Registry

建立推論和訓練映像之後,您可以將它們上傳至 Amazon Elastic Container Registry。Amazon ECR 是全受管的 Docker 登錄檔。Amazon SageMaker AI 從 Amazon ECR 提取映像,以建立模型套件以進行推論,或建立訓練任務的演算法。 AWS Marketplace 也會從 Amazon ECR 擷取這些映像以發佈模型套件和演算法產品。本主題提供將推論和訓練映像上傳至 Amazon ECR 的逐步解說

我必須上傳哪些影像?

如果您要發佈模型套件,請僅上傳推論映像。如果您要發佈演算法,請上傳推論映像和訓練映像。如果推論和訓練影像已合併,請僅上傳合併的影像一次。

需要哪些 IAM 許可?

下列步驟假設本機電腦具有賣方中 AWS Identity and Access Management (IAM) 角色或使用者的正確 AWS 登入資料 AWS 帳戶。角色或使用者必須同時為 AWS Marketplace 和 Amazon ECR 制定正確的政策。例如,您可以使用下列 AWS 受管政策:

注意

連結會帶您前往 AWS 受管政策參考

將您的 Docker 用戶端登入 AWS

為您要從中發佈 AWS 區域 的 設定變數 (請參閱 支援 AWS 區域 發佈)。在此範例中,請使用美國東部 (俄亥俄) 區域。

region=us-east-2

執行下列命令,以您的 AWS 帳戶 ID 設定變數。此範例假設 current AWS Command Line Interface (AWS CLI) 憑證屬於賣方的 AWS 帳戶。

account=$(aws sts get-caller-identity --query Account --output text)

若要使用您區域的 AWS 帳戶 Amazon ECR Docker 登錄檔來驗證 Docker CLI 用戶端,請執行下列命令。

aws ecr get-login-password \ --region ${region} \ | sudo docker login \ --username AWS \ --password-stdin \ ${account}.dkr.ecr.${region}.amazonaws.com

建立儲存庫並上傳映像

為上傳影像的標籤設定變數,並為上傳影像儲存庫的名稱設定另一個變數。

image=my-inference-image repo=my-inference-image
注意

在本指南先前建置推論和訓練映像的章節中,它們分別標記為 my-inference-imagemy-training-image。在此範例中,建立推論映像,並將其上傳至同名的儲存庫。

執行下列命令,在 Amazon ECR 中建立映像儲存庫。

aws ecr --region ${region} create-repository --repository-name "${repo}"

Amazon ECR 儲存庫位置的完整名稱由下列部分組成: <account-id>.dkr.ecr.<region>.amazonaws.com/<image-repository-name>

若要將映像推送至儲存庫,您必須使用儲存庫位置的完整名稱來標記映像。

為映像儲存庫位置的完整名稱以及 latest標籤設定變數。

fullname="${account}.dkr.ecr.${region}.amazonaws.com/${repo}:latest"

使用全名標記映像。

sudo docker tag ${image} ${fullname}

最後,將推論映像推送至 Amazon ECR 中的儲存庫。

sudo docker push ${fullname}

上傳完成後,映像會出現在您發佈所在區域的 Amazon ECR 主控台儲存庫清單中。在上一個範例中,映像被推送到美國東部 (俄亥俄) 區域的儲存庫。

掃描上傳的映像

Amazon ECR 主控台中,選擇您要從中發佈 AWS 區域 的 ,然後開啟映像上傳到的儲存庫。選取您上傳的映像,並開始掃描以檢查已知漏洞。在發佈之前, 會 AWS Marketplace 檢查 Amazon SageMaker AI 資源中所用容器映像的 Amazon ECR 掃描結果。您必須先修正具有嚴重或高嚴重性漏洞的容器映像,才能建立產品。

成功掃描映像後,即可用來建立模型套件或演算法資源。

若您認為您的產品在掃描中發生錯誤,且結果為誤報,請聯絡AWS Marketplace 賣方營運團隊提供錯誤的相關資訊。

後續步驟