View a markdown version of this page

自定义镜像 - 亚马逊 SageMaker AI

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

自定义镜像

如果您需要的功能与 SageMaker 发行版提供的功能不同,则可以自带带有自定义扩展和软件包的镜像。您还可以使用它来个性化 Code Editor 用户界面,以满足自己的品牌或合规需求。

下一页将提供用于创建您自己的自定义 SageMaker AI 镜像的代码 Editor-specific 信息和模板。这旨在补充 Amazon SageMaker Studio 关于创建自己的 SageMaker AI 图像和将自己的图像带到 Studio 的信息和说明。要了解有关自定义 Amazon SageMaker AI 图像以及如何将自己的图像带到 Studio 的信息,请参阅自带映像(BYOI)

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

  • Base URL:BYOI 应用程序的基本 URL 必须为 CodeEditor/default。您只能有一个应用程序,且必须始终命名为 default

  • Health check 端点 — 你必须将代码编辑器服务器托管在 0.0.0.0 端口 8888, SageMaker AI 才能对其进行检测。

  • 身份验证 — 您必须在打开--without-connection-token时通过sagemaker-code-editor才能允许 SageMaker AI 对您的用户进行身份验证。

注意

如果您使用 Amazon Distrib SageMaker ution 作为基础图片,则这些要求已作为随附entrypoint-code-editor脚本的一部分得到满足。

Dockerfile 示例

以下示例是符合上述信息与自定义映像规范Dockerfile

注意

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

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

Example micromamba Dockerfile

以下是用于通过 micromamba 基本环境从头开始创建映像的示例 Dockerfile:

FROM mambaorg/micromamba:latest ARG NB_USER="sagemaker-user" ARG NB_UID=1000 ARG NB_GID=100 USER root RUN micromamba install -y --name base -c conda-forge sagemaker-code-editor USER $NB_UID CMD eval "$(micromamba shell hook --shell=bash)"; \ micromamba activate base; \ sagemaker-code-editor --host 0.0.0.0 --port 8888 \ --without-connection-token \ --base-path "/CodeEditor/default"
Example SageMaker AI Distribution Dockerfile

以下是基于亚马逊 A SageMaker I Distribution 创建映像的 Dockerfile 示例:

FROM public.ecr.aws/sagemaker/sagemaker-distribution:latest-cpu ARG NB_USER="sagemaker-user" ARG NB_UID=1000 ARG NB_GID=100 ENV MAMBA_USER=$NB_USER USER root # install scrapy in the base environment RUN micromamba install -y --name base -c conda-forge scrapy # download VSCodeVim RUN \ wget https://github.com/VSCodeVim/Vim/releases/download/v1.27.2/vim-1.27.2.vsix \ -P /tmp/exts/ --no-check-certificate # Install the extension RUN \ extensionloc=/opt/amazon/sagemaker/sagemaker-code-editor-server-data/extensions \ && sagemaker-code-editor \ --install-extension "/tmp/exts/vim-1.27.2.vsix" \ --extensions-dir "${extensionloc}" USER $MAMBA_USER ENTRYPOINT ["entrypoint-code-editor"]