创建 SageMaker ECR 容器镜像中的映像 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建 SageMaker ECR 容器镜像中的映像

请执行下列步骤来创建 SageMaker 从容器映像中:

  • 创建 Image

  • 创建 ImageVersion

  • 创建配置文件。

  • 创建 AppImageConfig

创建 SageMaker 映像实体

  1. 创建 SageMaker 映像。

    aws sagemaker create-image \ --image-name r-image \ --role-arn arn:aws:iam::<acct-id>:role/service-role/<execution-role>

    响应:

    { "ImageArn": "arn:aws:sagemaker:us-east-2:acct-id:image/r-image" }
  2. 创建 SageMaker 来自容器映像的映像版本。

    aws sagemaker create-image-version \ --image-name r-image \ --base-image <acct-id>.dkr.ecr.<region>.amazonaws.com/smstudio-custom:r

    响应:

    { "ImageVersionArn": "arn:aws:sagemaker:us-east-2:acct-id:image-version/r-image/1" }
  3. 检查映像版本是否已成功创建。

    aws sagemaker describe-image-version \ --image-name r-image \ --version 1

    响应:

    { "ImageVersionArn": "arn:aws:sagemaker:us-east-2:acct-id:image-version/r-image/1", "ImageVersionStatus": "CREATED" }
    注意

    如果响应如此"ImageVersionStatus": "CREATED_FAILED",答复还包括失败原因。权限问题是导致失败的常见原因。你也可以查看你的亚马逊 CloudWatch 日志。日志组的名称是/aws/sagemaker/studio. 日志流的名称是$domainID/$userProfileName/KernelGateway/$appName.

  4. 创建配置文件,名为app-image-config-input.json. 这些区域有:Name的值KernelSpecs必须与此相关的映像中可用的 KernelSpec 名称匹配。AppImageConfig. 此值区分大小写。您可以通过运行以下方法在映像中找到可用的 KernelSpecesjupyter-kernelspec list来自容器内的外壳。MountPath是映像中挂载 Amazon Elastic File System (Amazon EFS) 主目录的路径。它需要与您在容器内使用的路径不同,因为挂载 Amazon EFS 主目录时,该路径将被覆盖。有关在 Studio 中使用之前在本地测试图像的信息,请参阅发展中的 SageMaker Studio 自定义图像示例存储库。

    注意

    以下DefaultUIDDefaultGID组合是唯一可接受的值:

    • defaultuID:1000 和 defaultGID:100

    • defaultuID:0 和 defaultGID:0

    { "AppImageConfigName": "r-image-config", "KernelGatewayImageConfig": { "KernelSpecs": [ { "Name": "ir", "DisplayName": "R (Custom R Image)" } ], "FileSystemConfig": { "MountPath": "/home/sagemaker-user", "DefaultUid": 1000, "DefaultGid": 100 } } }
  5. 创建 AppImageConfig 使用在上一步中创建的文件。

    aws sagemaker create-app-image-config \ --cli-input-json file://app-image-config-input.json

    响应:

    { "AppImageConfigArn": "arn:aws:sagemaker:us-east-2:acct-id:app-image-config/r-image-config" }