カスタムイメージ - Amazon SageMaker AI

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

カスタムイメージ

SageMaker Distribution が提供する機能とは異なる機能が必要な場合は、カスタムの拡張機能とパッケージを使用した独自のイメージを持ち込むことができます。これを使用して、独自のブランドやコンプライアンスのニーズに合わせて JupyterLab UI をパーソナライズすることもできます。

次のページでは、独自のカスタム SageMaker AI イメージを作成するための JupyterLab 固有の情報とテンプレートを提供します。これは、独自の Amazon SageMaker SageMaker Studio の情報と手順を補足することを目的としています。カスタム Amazon SageMaker AI イメージと Studio に独自のイメージを持ち込む方法については、「」を参照してくださいBring your own image (BYOI)

アプリケーションのヘルスチェックと URL

  • Base URL – BYOI アプリケーションのベース URL は jupyterlab/default である必要があります。保持できるアプリケーションは 1 つのみで、必ず default という名前にする必要があります。

  • HealthCheck API – SageMaker AI は8888、ポートのヘルスチェックエンドポイントを使用して JupyterLab アプリケーションのヘルスをチェックします。 jupyterlab/default/api/statusはヘルスチェックのエンドポイントです。

  • Home/Default URL – が使用する /opt/.sagemakerinternalおよび /opt/ml ディレクトリ AWS。/opt/ml のメタデータファイルには、DomainId などのリソースに関するメタデータが含まれています。

  • 認証 - ユーザーの認証を有効にするには、Jupyter Notebook トークンまたはパスワードベースの認証をオフにし、すべてのオリジンを許可します。

Dockerfile の例

次の例は、上記の情報 および を満たす Dockerfileですカスタムイメージの仕様

注記

独自のイメージを SageMaker Unified Studio に持ち込む場合は、Amazon SageMaker Unified Studio ユーザーガイドDockerfile 仕様に従う必要があります。

Dockerfile SageMaker Unified Studio の例は、Amazon SageMaker Unified Studio ユーザーガイドDockerfile の例にあります。

Example AL2023 Dockerfile

以下は、上記の情報 および AL2023Dockerfileを満たす例ですカスタムイメージの仕様

FROM public.ecr.aws/amazonlinux/amazonlinux:2023 ARG NB_USER="sagemaker-user" ARG NB_UID=1000 ARG NB_GID=100 # Install Python3, pip, and other dependencies RUN yum install -y \ python3 \ python3-pip \ python3-devel \ gcc \ shadow-utils && \ useradd --create-home --shell /bin/bash --gid "${NB_GID}" --uid ${NB_UID} ${NB_USER} && \ yum clean all RUN python3 -m pip install --no-cache-dir \ 'jupyterlab>=4.0.0,<5.0.0' \ urllib3 \ jupyter-activity-monitor-extension \ --ignore-installed # Verify versions RUN python3 --version && \ jupyter lab --version USER ${NB_UID} CMD jupyter lab --ip 0.0.0.0 --port 8888 \ --ServerApp.base_url="/jupyterlab/default" \ --ServerApp.token='' \ --ServerApp.allow_origin='*'
Example Amazon SageMaker ディストリビューション Dockerfile

以下は、上記の情報 および Amazon SageMaker DistributionDockerfileを満たす例ですカスタムイメージの仕様

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 RUN apt-get update RUN micromamba install sagemaker-inference --freeze-installed --yes --channel conda-forge --name base USER $MAMBA_USER ENTRYPOINT ["jupyter-lab"] CMD ["--ServerApp.ip=0.0.0.0", "--ServerApp.port=8888", "--ServerApp.allow_origin=*", "--ServerApp.token=''", "--ServerApp.base_url=/jupyterlab/default"]