本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建 SageMaker ECR 容器镜像中的映像
请执行下列步骤来创建 SageMaker 从容器映像中:
创建
Image
。创建
ImageVersion
。创建配置文件。
创建
AppImageConfig
。
创建 SageMaker 映像实体
-
创建 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" }
-
创建 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" }
-
检查映像版本是否已成功创建。
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
. -
创建配置文件,名为
app-image-config-input.json
. 这些区域有:Name
的值KernelSpecs
必须与此相关的映像中可用的 KernelSpec 名称匹配。AppImageConfig
. 此值区分大小写。您可以通过运行以下方法在映像中找到可用的 KernelSpecesjupyter-kernelspec list
来自容器内的外壳。MountPath
是映像中挂载 Amazon Elastic File System (Amazon EFS) 主目录的路径。它需要与您在容器内使用的路径不同,因为挂载 Amazon EFS 主目录时,该路径将被覆盖。有关在 Studio 中使用之前在本地测试图像的信息,请参阅发展中的 SageMaker Studio 自定义图像示例存储库。 注意 以下
DefaultUID
和DefaultGID
组合是唯一可接受的值: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 } } }
-
创建 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" }