# カスタム環境

> カスタム環境 - カスタムモデルがDataRobotのビルトイン環境に含まれないものを必要とする場合に、カスタム環境を構築する方法を説明します。

This Markdown file sits beside the HTML page at the same path (with a `.md` suffix). It summarizes the topic and lists links for tools and LLM context.

Companion generated at `2026-07-15T05:55:44.919417+00:00` (UTC).

## Primary page

- [カスタム環境](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md): Full documentation for this topic (Markdown sidecar).

## Sections on this page

- [カスタム環境ガイドライン](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#custom-environment-guidelines): In-page section heading.
- [環境変数](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#environment-variables): In-page section heading.
- [環境の作成](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#create-the-environment): In-page section heading.
- [Linuxパッケージの追加](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#add-linux-packages): In-page section heading.
- [Python/Rパッケージの追加](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#add-python-r-packages): In-page section heading.
- [ローカルで環境をテストする](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#test-the-environment-locally): In-page section heading.
- [DataRobotにカスタム環境を追加](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#add-a-custom-environment-to-datarobot): In-page section heading.
- [環境バージョンの追加](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#add-an-environment-version): In-page section heading.
- [環境情報の表示](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#view-environment-information): In-page section heading.
- [環境の共有とダウンロード](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#share-and-download-an-environment): In-page section heading.
- [セルフマネージドAIプラットフォームの管理者](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#self-managed-ai-platform-admins): In-page section heading.
- [環境可用性](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#environment-availability): In-page section heading.

## Documentation content

カスタムモデルは、DataRobotにアップロードされると、Kubernetes上で動作するDockerコンテナという環境の中で実行されます。 つまり、DataRobotは、カスタムタスクを定義するアップロードされたファイルをコンテナにコピーします。 DataRobotにはさまざまなビルトイン環境が用意されているので、ほとんどの場合、カスタム環境を追加する必要はありません。 タスクのコードを記載した `requirements.txt` ファイルをアップロードすることにより、これらの環境にPythonやRのパッケージを容易に追加できます。 カスタム環境が必要なのは、カスタムタスクが次の状況にある場合だけです。

- 追加のLinuxパッケージが必要な状況。
- 別のオペレーティングシステムが必要な状況。
- Python、R、Java以外の言語を使用する状況。

このドキュメントでは、これらのケースでカスタム環境を構築する方法について説明します。 カスタム環境をローカルで構築してテストするには、Docker Desktopと [DataRobot User Models (DRUM) CLIツール](https://docs.datarobot.com/ja/docs/api/code-first-tools/drum/custom-model-drum.html.md) の両方をマシンにインストールします。

## カスタム環境ガイドライン

> [!NOTE] 備考
> 環境テンプレートを使用することをお勧めします。特定のユースケースを除き、独自の環境を構築することは推奨されません。 （DRUMを使用せず、独自の予測サーバーを実装する場合など）

テンプレート環境でサポートされていないツール、言語、またはフレームワークを使用する場合は、独自に作成できます。 DataRobotでは、提供された環境を必要に応じて変更することをお勧めします。ただし、使いやすく再利用可能な環境を作成するには、次のガイドラインに従う必要があります。

- 環境には、必要な要件をインストールするDockerfileが含まれている必要があります。
- カスタムモデルには、予測を行うための単純なウェブサーバーが必要です。 DataRobotでは、複数のモデルで再利用できるように、これを環境内に置くことをお勧めします。 ウェブサーバーはポート8080でリッスンし、次のルートを実装する必要があります。 備考URL_PREFIXはランタイムで使用可能な環境変数です。 以下のルートに追加する必要があります。 必須エンドポイント説明GET /URL_PREFIX/このルートは、モデルのサーバーが実行されているかどうかを確認するために使用されます。POST /URL_PREFIX/predict/このルートは予測の作成に使用されます。 オプションの拡張エンドポイント説明GET /URL_PREFIX/stats/このルートは、DataRobotカスタムモデルテストのメモリー使用量データを取得するために使用されます。GET /URL_PREFIX/health/このルートは、モデルがロードされ、正常に機能するかどうかを確認するために使用されます。 モデルの読み込みに失敗した場合、513レスポンスコードを含むエラーが返されます。 このケースを処理しないと、バックエンドk8sコンテナがクラッシュし、数分間の再起動ループに入ることがあります。
- モデルサーバーを起動するには、実行可能なstart_server.shファイルが必要です。
- すべてのコードおよびstart_server.shは、Dockerfileによって/opt/code/にコピーする必要があります。

> [!NOTE] 備考
> 完全なAPI仕様の詳細については、 [DRUMサーバーAPIyamlファイル](https://github.com/datarobot/datarobot-user-models/blob/master/custom_model_runner/drum_server_api.yaml) を参照してください。

## 環境変数

DRUMでカスタム環境を構築する場合、カスタムモデルコードは、 [DataRobotクライアント](https://pypi.org/project/datarobot/) と [MLOps Connected Client](https://pypi.org/project/datarobot-mlops-connected-client/) へのアクセスを容易にするために挿入された複数の環境変数を参照できます。

| 環境変数 | 説明 |
| --- | --- |
| MLOPS_DEPLOYMENT_ID | カスタムモデルがデプロイモードで実行されている場合（カスタムモデルがデプロイされている場合）、デプロイIDを使用できます。 |
| DATAROBOT_ENDPOINT | カスタムモデルに パブリックネットワークアクセスがある場合、DataRobotエンドポイントURLを使用できます。 |
| DATAROBOT_API_TOKEN | カスタムモデルに パブリックネットワークアクセスがある場合、DataRobot APIトークンを使用できます。 |

## 環境の作成

DRUMのインストールが完了したら、 [GitHub](https://github.com/datarobot/datarobot-user-models/tree/master/public_dropin_environments) にある例の1つをコピーして環境作成を開始します。 このリンクをクリックする前にGitHubにログインしてください。 以下を確認してください。

1. 環境コードは単一のフォルダーに保存されます。
2. env_info.json ファイルを削除します。

### Linuxパッケージの追加

Linuxパッケージを環境に追加するには、 `dockerfile` の先頭、 `FROM datarobot…` 行の直後にコードを追加します。

Ubuntuベース用の `dockerfile` 構文を使用します。 たとえば、次のコマンドはDataRobotにどのベースを使用するかを指示し、そしてDockerイメージ内にパッケージ `foo` 、 `boo` 、 `moo` をインストールするよう指示します。

```
FROM datarobot/python3-dropin-env-base
RUN apt-get update --fix-missing && apt-get install foo boo moo 
```

### Python/Rパッケージの追加

場合によっては、Python/Rのパッケージを環境に含めたい場合があります。 その場合は、以下の点に注意してください。

- インストールするパッケージをrequirements.txtに表示します。 Rパッケージの場合、バージョンはリストに含めません。
- PythonとRのパッケージを同じrequirements.txtファイルに混在させないでください。 その代わり、複数のファイルを作成し、dockerfileを調整して、DataRobotがそれらを見つけて使用できるようにします。

## ローカルで環境をテストする

次の例では、DockerツールとDRUMを使って環境をすばやくテストする方法を示しています。

1. カスタムタスクをカスタム環境と一緒にテストするには、タスクの内容が保存されているローカルフォルダーに移動します。
2. 以下を実行し、< >ブラケットの中のプレースホルダー名を実際の名前に置き換えてください。 drumfit--code-dir<path_to_task_content>--docker<path_to_a_folder_with_environment_code>--input<path_to_test_data.csv>--target-type<target_type>--target<target_column_name>--verbose

## DataRobotにカスタム環境を追加

カスタム環境を作成するには、 `.tar` 、 `.tar.gz` 、または `.zip` 形式の圧縮フォルダーをアップロードする必要があります。 作業を続ける前に、 [カスタム環境フォルダーの準備](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#custom-environment-guidelines) に関するガイドラインを確認してください。 [ドロップイン環境](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/drop-in-environments.html.md) は、スコアリングコードと `start_server.sh` ファイルを環境フォルダーに追加することによって作成することもできます。

以下に示す環境数と環境バージョン数の上限に注意してください。

**SaaS:**
新しい環境を追加 ボタンと 新しいバージョン ボタンの横に、追加した環境（または環境バージョン）の数と、合計で追加できる環境（または環境バージョン）の数を示すバッジがあります。 適切な権限があれば、管理者はこれらの上限数を [ユーザー](https://docs.datarobot.com/ja/docs/platform/admin/manage-entities/manage-users.html.md#manage-execution-environment-limits) または [グループ](https://docs.datarobot.com/ja/docs/platform/admin/manage-entities/manage-groups.html.md#manage-execution-environment-limits) レベルで設定できます。 このバッジには、次のステータスカテゴリーがあります。

**セルフマネージド:**
新しい環境を追加 ボタンと 新しいバージョン ボタンの横に、追加した環境（または環境バージョン）の数と、合計で追加できる環境（または環境バージョン）の数を示すバッジがあります。 適切な権限があれば、管理者はこれらの上限数を [ユーザー](https://docs.datarobot.com/ja/docs/platform/admin/manage-entities/manage-users.html.md#manage-execution-environment-limits) 、 [グループ](https://docs.datarobot.com/ja/docs/platform/admin/manage-entities/manage-groups.html.md#manage-execution-environment-limits) または [組織](https://docs.datarobot.com/ja/docs/platform/admin/manage-entities/manage-orgs.html.md#manage-execution-environment-limits) レベルで設定できます。 このバッジには、次のステータスカテゴリーがあります。


| バッジ | 説明 |
| --- | --- |
|  | 環境数は上限の75%未満です。 |
|  | 環境数は上限の75%以上です。 |
|  | 環境数が上限に達しました。 最初に環境を削除しないと、環境を追加することはできません。 |

モデルレジストリ > カスタムモデルワークショップ に移動し、 環境 タブを選択します。 このタブには、DataRobotが提供する環境と自分の作成した環境が一覧表示されます。 新しい環境を追加 をクリックして環境の詳細を設定し、ワークショップに追加します。

新しい環境を追加 ダイアログボックスのフィールドに入力します。

| フィールド | 説明 |
| --- | --- |
| 環境名 | 環境の名前。 |
| コンテキストファイル | Dockerfileと環境イメージを構築するために必要なその他のファイルを含むアーカイブ。 ビルド済みイメージを指定する場合、このファイルは必要ありません。 |
| 構築済みイメージ | （オプション）Dockerのsaveコマンドでtarballとして保存された構築済みの環境イメージ。 |
| プログラミング言語 | 環境が作られた言語。 |
| 説明 | カスタム環境に関するオプションの説明。 |
| 環境タイプ | この環境でサポートされるDataRobotのアーティファクトタイプ：カスタムモデルまたはノートブック。 |

> [!NOTE] コンテキストファイルと環境イメージのアップロード
> コンテキストとイメージファイルの 両方 をアップロードする場合、イメージファイルが優先されます。 イメージファイルをアップロードする際にコンテキストファイルは必須ではありませんが、コンテキストを必要とする機能がワークフローに含まれている場合があるため、コンテキストファイルをアップロードしてください。

すべてのフィールドに入力して 追加 をクリックします。 カスタム環境をワークショップで使用する準備が整います。

環境をアップロードすると、他の個人と [共有](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#share-and-download-an-environment) しない限り、その環境は自分だけが利用できます。 既存の環境に変更を加えるには、新しい [バージョン](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#add-an-environment-version) を作成します。

### 環境バージョンの追加

ワークショップにカスタム環境の新規バージョンを追加して、トラブルシューティングまたは更新します。 バージョン タブで、 新しいバージョン を選択します。

新規バージョンのファイルをアップロードし、簡単な説明をしてから、 追加 をクリックします。

| フィールド | 説明 |
| --- | --- |
| コンテキストファイル | Dockerfileと環境イメージを構築するために必要なその他のファイルを含むアーカイブ。 ビルド済みイメージを指定する場合、このファイルは必要ありません。 |
| 構築済みイメージ | （オプション）Dockerのsaveコマンドでtarballとして保存された構築済みの環境イメージ。 |
| 説明 | カスタム環境に関するオプションの説明。 |

> [!NOTE] コンテキストファイルと環境イメージのアップロード
> コンテキストとイメージファイルの 両方 をアップロードする場合、イメージファイルが優先されます。 イメージファイルをアップロードする際にコンテキストファイルは必須ではありませんが、コンテキストを必要とする機能がワークフローに含まれている場合があるため、コンテキストファイルをアップロードしてください。

バージョン タブで新規バージョンを使用でき、過去の環境バージョンは後で使用できるように保存されます。 デフォルトでは、 [モデルのバージョンを作成](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-workshop/custom-model-versions.html.md) するとき、選択された実行環境が変更されない場合、その実行環境のバージョンは、より新しい環境のバージョンが利用可能であっても、以前のカスタムモデルのバージョンから維持されます。 カスタムモデルのバージョンが最新バージョンの実行環境を使用するようにする方法の詳細については、 [基本実行環境の更新をトリガーする](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#trigger-base-execution-environment-update) を参照してください。

**基本実行環境の更新をトリガーする**

[新しい環境バージョン](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-environments/custom-environments.html.md#add-an-environment-version) が使用可能であっても、実行環境バージョンがカスタムモデルバージョン間で保持される、実行環境バージョン選択の デフォルトの動作をオーバーライドする には、 基本環境 の設定を一時的に変更する必要があります。 これを行うには、別の 基本環境 設定を使用して新しいカスタムモデルバージョンを作成してから、目的の 基本環境 に切り替えて、新しいカスタムモデルバージョンを作成します。 この変更後、カスタムモデルの最新バージョンでは、実行環境の最新バージョンが使用されます。

### 環境情報の表示

各カスタム環境およびビルトイン環境用のさまざな情報が用意されています。 表示方法：

1. モデルレジストリ > カスタムモデルワークショップ > 環境に移動します。 表示されるリストには、ユーザーのアカウントで利用できるすべての環境が、サマリー情報とともに表示されます。
2. 個々の環境の詳細については、クリックして選択します。 バージョンタブには、バージョン固有のさまざまな情報が表示され、そのバージョンの環境コンテキストファイルをダウンロードするためのリンクが表示されます。
3. 現在のデプロイをクリックすると、現在の環境が使用されているすべてのデプロイのリストが表示されます。
4. 環境情報をクリックすると、バージョン情報を含まない一般的な環境に関する情報が表示されます。

### 環境の共有とダウンロード

カスタム環境は、右のメニューオプションから組織内の誰とでも共有することができます。 これらのオプションは、組織のすべてのメンバーがアクセスするので、ビルトイン環境では使用できません。これらの環境オプションは削除しないでください。

> [!NOTE] 備考
> タスクまたは環境は、明示的に共有されていない限り、モデル登録で他のユーザーが利用することはできません。 しかし、それは、ユーザーがそのタスクを含むブループリントを使用することを制限するものではありません。 詳細については [暗黙の共有](https://docs.datarobot.com/ja/docs/classic-ui/modeling/special-workflows/cml/cml-custom-tasks.html.md#implicit-sharing) の説明を参照してください。

モデルレジストリ > カスタムモデルワークショップ > 環境 から、メニューを使用して、ユーザーが適切な権限を持つカスタム環境を [共有および/または削除](https://docs.datarobot.com/ja/docs/classic-ui/mlops/deployment/custom-models/custom-model-workshop/custom-model-actions.html.md) することができます。 （リンク先はカスタムモデルのアクションですが、カスタムのタスクと環境でのオプションは同じであることに注意してください。）

## セルフマネージドAIプラットフォームの管理者

以下は、セルフマネージドAIプラットフォームでのみ利用可能です。

### 環境可用性

各カスタム環境はパブリックまたはプライベートのいずれかです（デフォルト可用性）。 環境をパブリックにすると、同じDataRobotインストールの一部である他のユーザーは、オーナーが明示的に共有またはユーザーが独自のバージョンを作成またはアップロードすることなく使用できます。 プライベート環境は、オーナーおよび環境が共有されているユーザーだけが表示できます。 カスタム環境をパブリックにする場合は、DataRobotシステム管理者にお問い合わせください。
