View a markdown version of this page

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

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

カスタムイメージ

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

次のページでは、独自のカスタム SageMaker AI イメージを作成するための JupyterLab 固有の情報とテンプレートを説明します。これは、独自の Amazon SageMaker Studio の情報と、独自の SageMaker AI イメージを作成して Studio に取り込む (BYOI) 手順を補足することを目的としています。カスタム Amazon SageMaker AI イメージと Studio に独自のイメージを取り込む (BYOI) 方法については、「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 に取り込む (BYOI) 場合は、「Amazon SageMaker Unified Studio ユーザーガイド」の「Dockerfile 仕様」に従う必要があります。

SageMaker Unified Studio の Dockerfile の例については、「Amazon SageMaker Unified Studio ユーザーガイド」の「Dockerfile の例」を参照してください。

Example AL2023 Dockerfile

以下の例は、上記の情報とカスタムイメージの仕様を満たす AL2023 Dockerfile の例です。

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 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 RUN apt-get update RUN micromamba install sagemaker-inference --freeze-installed --yes --channel conda-forge --name base USER $MAMBA_USER ENTRYPOINT ["entrypoint-jupyter-server"]