翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ローカルモードの開始方法
以下のセクションでは、Amazon SageMaker Studio でローカルモードを開始するために必要な、次の手順の概要を示します。
-
前提条件を満たす
-
EnableDockerAccess
の設定 -
Docker のインストール
前提条件
Studio アプリケーションでローカルモードを使用するには、次の前提条件を満たす必要があります。
-
Amazon Elastic Container Registry リポジトリからイメージを取得するために、Amazon ECR イメージをホストするアカウントから、ユーザーの実行ロールにアクセス許可を付与する必要があります。ドメインの実行ロールで Amazon ECR へのアクセスを許可する必要もあります。
-
次のコマンドを使用して、最新バージョンの Studio Python SDK を使用していることを確認します:
pip install -U sagemaker
-
ローカルモードとDocker機能を使用するには、 AWS Command Line Interface ()
DockerSettings
を使用してドメインの の次のパラメータを設定しますAWS CLI。EnableDockerAccess : ENABLED
-
EnableDockerAccess
を使用すると、ドメイン内のユーザーにローカルモードの使用を許可するかどうかも制御できます。デフォルトでは、Studio アプリケーションでのローカルモードと Docker 機能の使用は許可されていません。詳細については、「EnableDockerAccess の設定」を参照してください。 -
「Docker のインストール」の手順に従って、Studio アプリケーションに Docker CLI をインストールします。
EnableDockerAccess
の設定
以下のセクションでは、ドメインがパブリックインターネットにアクセスできるか、または VPC-only
モードである場合に EnableDockerAccess
を設定する方法を示します。
注記
EnableDockerAccess
の変更は、ドメインの更新後に作成されたアプリケーションにのみ適用されます。ドメインを更新した後で、新しいアプリケーションを作成している必要があります。
パブリックインターネットアクセス
次のコマンド例は、新しいドメインの作成時、または既存のドメインをパブリックインターネットアクセスで更新する場合に EnableDockerAccess
を設定する方法を示しています。
# create new domain aws --region
region
\ sagemaker create-domain --domain-namedomain-name
\ --vpc-idvpc-id
\ --subnet-idssubnet-ids
\ --auth-mode IAM \ --default-user-settings "ExecutionRole=execution-role
" \ --domain-settings '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}' \ --query DomainArn \ --output text # update domain aws --regionregion
\ sagemaker update-domain --domain-iddomain-id
\ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED"}}'
VPC-only
モード
ドメインを VPC-only
モードで使用する場合、Docker イメージのプッシュリクエストとプルリクエストは、顧客が設定した VPC ではなく、サービスの VPC を使用してルーティングされます。そのため管理者は、ユーザーに Amazon ECR Docker のプルリクエストとプッシュリクエストの送信を許可する、信頼された AWS アカウント
のリストを設定できます。
信頼されたDocker のリストに含まれ AWS アカウント ていない に対してイメージのプッシュまたはプルリクエストが行われた場合 AWS アカウント、リクエストは失敗します。Amazon Elastic Container Registry (Amazon ECR) 外のDockerプルおよびプッシュオペレーションは、 VPC-only
モードではサポートされていません。
デフォルトで、以下 AWS アカウント が信頼されています。
-
SageMaker AI ドメインをホストするアカウント。
-
次の SageMaker AI イメージをホストする SageMaker AI アカウント:
-
DLC フレームワークイメージ
-
イメージを処理する Sklearn、Spark、XGBoost
-
追加の信頼された のリストを設定するには AWS アカウント、次のようにVpcOnlyTrustedAccounts
値を指定します。
aws --region
region
\ sagemaker update-domain --domain-iddomain-id
\ --domain-settings-for-update '{"DockerSettings": {"EnableDockerAccess": "ENABLED", "VpcOnlyTrustedAccounts": ["account-list
"]}}'
Docker のインストール
Docker を使用するには、Studio アプリケーションのターミナルから手動で Docker をインストールする必要があります。ドメインがインターネットにアクセスできるかどうかによって、Docker のインストール手順は異なります。
インターネットアクセス
ドメインがパブリックインターネットアクセスありで作成されている場合、または VPC-only
モードで、インターネットアクセスが制限された状態で作成されている場合は、次の手順で Docker をインストールします。
-
(オプション) ドメインが
VPC-only
モードで、インターネットアクセスが制限された状態で作成されている場合は、Docker ウェブサイトにアクセス可能なパブリック NAT ゲートウェイを作成します。手順については、「NAT gateways」を参照してください。 -
Docker をインストールする Studio アプリケーションのターミナルに移動します。
-
アプリケーションのオペレーティングシステムを返すには、ターミナルから次のコマンドを実行します:
cat /etc/os-release
-
Amazon DockerAmazon SageMaker AI Local Mode Examples リポジトリ
のアプリケーションのオペレーティングシステムに関する指示に従って をインストールします。 例えば、Docker をUbuntu にインストールする場合は、https://github.com/aws-samples/amazon-sagemaker-local-mode/blob/main/sagemaker_studio_docker_cli_install/sagemaker-ubuntu-focal-docker-cli-install.sh
のスクリプトに従います。以下の点を考慮してください。 -
連鎖コマンドが失敗する場合は、コマンドを 1 つずつ実行します。
-
Studio は Docker バージョン
20.10.X.
および Docker Engine API バージョン1.41
のみをサポートします。 -
以下のパッケージは Studio で Docker CLI を使用する際に必要ないため、インストールをスキップできます。
-
containerd.io
-
docker-ce
-
docker-buildx-plugin
-
注記
アプリケーションで Docker サービスを起動する必要はありません。Studio アプリケーションをホストするインスタンスが、デフォルトで Docker サービスを実行します。すべての Docker API コールは、自動的に Docker サービスを経由してルーティングされます。
-
-
Studio アプリケーション内で Docker とやり取りするために、公開された Docker ソケットを使用します。デフォルトでは、次のソケットが公開されます。
unix:///docker/proxy.sock
この公開されたソケットを、デフォルトの
USER
に対する次の Studio アプリケーション環境変数が使用します。DOCKER_HOST
インターネットアクセスがない場合
ドメインが VPC-only
モードで、インターネットアクセスなしで作成されている場合は、次の手順で Docker をインストールします。
-
Docker をインストールする Studio アプリケーションのターミナルに移動します。
-
ターミナルから次のコマンドを実行して、アプリケーションのオペレーティングシステムを返します。
cat /etc/os-release
-
Docker の
.deb
ファイルをローカルマシンにダウンロードします。Studio アプリケーションのオペレーティングシステムごとに必要なファイルをダウンロードする手順については、「Install Docker Engine」を参照してください。 例えば、Ubuntu のパッケージから Docker をインストールするには、以下の点を考慮しながら、「Install from a package
」の手順 1~4 に従います。 -
パッケージから Docker をインストールします。他の方法を使用して Docker をインストールすると失敗します。
-
Docker バージョン
20.10.X
に対応する最新のパッケージをインストールします。 -
Studio で Docker CLI を使用するために、次のパッケージは必要ありません。インストールは不要です:
-
containerd.io
-
docker-ce
-
docker-buildx-plugin
-
注記
アプリケーションで Docker サービスを起動する必要はありません。Studio アプリケーションをホストするインスタンスが、デフォルトで Docker サービスを実行します。すべての Docker API コール、自動的に Docker サービスを経由してルーティングされます。
-
-
.deb
ファイルを Amazon EFS ファイルシステム、またはアプリケーションの Amazon EBS ファイルシステムにアップロードします。 -
Studio アプリケーションターミナルから
docker-ce-cli
およびdocker-compose-plugin
.deb
パッケージを手動でインストールします。詳細と手順については、Docker のドキュメントウェブサイトの「Install from a package」の手順 5 を参照してください。 -
Studio アプリケーション内で Docker とやり取りするために、公開された Docker ソケットを使用します。デフォルトでは、次のソケットが公開されます。
unix:///docker/proxy.sock
この公開されたソケットを、デフォルトの
USER
に対する次の Studio アプリケーション環境変数が使用します。DOCKER_HOST