更新容器組態 - Amazon SageMaker AI

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

更新容器組態

您可以將自訂 Docker 映像帶入機器學習工作流程。自訂這些映像的關鍵層面是設定容器組態,或 ContainerConfig。以下頁面提供如何設定 的範例ContainerConfig

進入點是在容器啟動時執行的命令或指令碼。自訂進入點可讓您在應用程式啟動之前設定環境、初始化服務,或執行任何必要的設定。

此範例說明如何使用 為您的 JupyterLab 應用程式設定自訂進入點 AWS CLI。此範例假設您已建立自訂映像和網域。如需說明,請參閱將自訂映像連接至您的網域

  1. 首先為後續的 AWS CLI 命令設定變數。

    APP_IMAGE_CONFIG_NAME=app-image-config-name ENTRYPOINT_FILE=entrypoint-file-name ENV_KEY=environment-key ENV_VALUE=environment-value REGION=aws-region DOMAIN_ID=domain-id IMAGE_NAME=custom-image-name IMAGE_VERSION=custom-image-version
    • app-image-config-name 是您應用程式映像組態的名稱。

    • entrypoint-file-name 是容器進入點指令碼的名稱。例如 entrypoint.sh

    • environment-key 是您環境變數的名稱。

    • environment-value 是指派給您環境變數的值。

    • aws-region 是 Amazon SageMaker AI 網域 AWS 區域 的 。您可以在任何 AWS 主控台頁面的右上角找到此項目。

    • domain-id 是您的網域 ID。若要檢視您的網域,請參閱 檢視網域

    • custom-image-name 是您自訂映像的名稱。若要檢視您的自訂映像詳細資訊,請參閱 檢視自訂映像詳細資訊 (主控台)

      如果您遵循 中的指示將自訂映像連接至您的網域,建議您使用與該程序相同的映像名稱。

    • custom-image-version 是您自訂映像的版本編號。這應該是整數,代表映像的版本。若要檢視您的自訂映像詳細資訊,請參閱 檢視自訂映像詳細資訊 (主控台)

  2. 使用 CreateAppImageConfig API 建立映像組態。

    aws sagemaker create-app-image-config \ --region ${REGION} \ --app-image-config-name "${APP_IMAGE_CONFIG_NAME}" \ --jupyter-lab-app-image-config "ContainerConfig = { ContainerEntrypoint = "${ENTRYPOINT_FILE}", ContainerEnvironmentVariables = { "${ENV_KEY}"="${ENV_VALUE}" } }"
  3. 使用 UpdateDomain API 來更新網域的預設設定。這將連接自訂映像以及應用程式映像組態。

    aws sagemaker update-domain \ --region ${REGION} \ --domain-id "${DOMAIN_ID}" \ --default-user-settings "{ \"JupyterLabAppSettings\": { \"CustomImages\": [ { \"ImageName\": \"${IMAGE_NAME}\", \"ImageVersionNumber\": ${IMAGE_VERSION}, \"AppImageConfigName\": \"${APP_IMAGE_CONFIG_NAME}\" } ] } }"