自定义映像规范 - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

自定义映像规范

您在 Dockerfile 中指定的映像必须符合以下各节中的规范,才能成功创建映像。

运行映像

通过更新您的,可以进行以下配置ContainerConfig。有关示例,请参阅更新容器配置

  • Entrypoint— 您可以配置ContainerEntrypoint并在ContainerArguments运行时将其传递到容器。我们建议使用配置您的入口点ContainerConfig。有关示例,请参阅上面的链接。

  • EnvVariables— 使用 Studio 时,您可以为容器定义自定义ContainerEnvironment变量。您可以选择使用更新您的环境变量ContainerConfig。有关示例,请参阅上面的链接。

    SageMaker 特定于 AI 的环境变量优先,并将覆盖所有同名的变量。例如, SageMaker AI 会自动提供前缀为和的环境变量SAGEMAKER_,以确保与 Amazon 服务Amazon_和 SageMaker AI 功能的正确集成。以下是一些 SageMaker 特定于 AI 的环境变量示例:

    • Amazon_ACCOUNT_ID

    • Amazon_REGION

    • Amazon_DEFAULT_REGION

    • Amazon_CONTAINER_CREDENTIALS_RELATIVE_URI

    • SAGEMAKER_SPACE_NAME

    • SAGEMAKER_APP_TYPE

用户和文件系统规范

  • WorkingDirectory:您空间的 Amazon EBS 卷已加载到路径 /home/sagemaker-user。无法更改挂载路径。使用 WORKDIR 指令将映像的工作目录设置为 /home/sagemaker-user 中的文件夹。

  • UID— 的用户 ID Docker 容器。UID=1000 是一个支持值。您可以为用户添加 sudo 访问权限。对 IDs 它们进行了重新映射,以防止容器中运行的进程拥有超出必要权限的权限。

  • GID— 的群组 ID Docker 容器。GID=100 是一个支持值。您可以为用户添加 sudo 访问权限。对 IDs 它们进行了重新映射,以防止容器中运行的进程拥有超出必要权限的权限。

  • 元数据/opt/ml目录-使用的/opt/.sagemakerinternal和目录 Amazon。/opt/ml 中的元数据文件包含有关 DomainId 等资源的元数据。

    使用以下命令显示文件系统内容:

    cat /opt/ml/metadata/resource-metadata.json
  • 日志目录 — /var/log/studio 保留给应用程序的日志目录以及与之相关的扩展。我们建议您不要使用这些文件夹来创建图像。

应用程序的运行状况检查和 URL

运行状况检查和 URL 取决于应用程序。选择以下与您正在为其构建映像的应用程序关联的链接。

Dockerfile 示例

对于既满足本页要求又满足您的特定应用程序需求的 Dockerfile 示例,请导航至相应应用程序部分中的示例 Dockerfile。以下选项包括亚马逊 SageMaker Studio 应用程序。

注意

如果您要将自己的镜像带到 SageMaker Unified Studio,则需要遵循亚马逊 Unifie SageMaker d Studio 用户指南中的 Dockerfile 规范

Dockerfile SageMaker Unified Studio 的示例可以在亚马逊 Unified Studio 用户指南的 Docker SageMaker f ile 示例中找到。