このガイドでは、Lindorm Ray が提供する公式パブリックイメージに基づいてカスタムイメージをビルドおよび使用する方法について説明します。必要なライブラリを事前にカスタムイメージにパッケージングすることで、一貫性のある実行環境を確保し、ジョブの起動を高速化し、複雑なユースケースにおける独自の要件を満たすことができます。
前提条件
作業を開始する前に、以下の前提条件を満たしていることを確認してください。
Lindorm Compute Engine を有効化済みであること。手順については、「Activate Service」をご参照ください。
Lindorm インスタンスと同じリージョンに Container Registry (ACR) インスタンスがあること。作成方法については、「Create an Enterprise Edition instance」をご参照ください。
注意事項
カスタムイメージを使用する際は、システムの安定性と互換性を確保するために、以下のルールに従ってください。
Dockerfile内で、以下のディレクトリまたはそのサブディレクトリ内のファイルを変更しないでください。/tmp/ray//opt/Ray のインストールディレクトリ。たとえば、Python 3.11 の場合、パスは
/home/ray/anaconda3/lib/python3.11/site-packages/ray/です。
カスタムイメージは、Lindorm インスタンスと同じリージョンにある ACR リポジトリにプッシュする必要があります。そうでない場合、Lindorm はイメージをプルできません。
コアワークフロー
カスタムイメージの使用には、以下の 4 つの主要ステップがあります。
準備とビルド:公式 Lindorm Ray パブリックイメージをベースとして
Dockerfileを記述し、カスタムイメージをビルドします。イメージのプッシュ:ビルドしたイメージを Alibaba Cloud ACR リポジトリにプッシュします。
アクセス権限の付与:Lindorm コンソールで、サービスがご利用の ACR リポジトリにアクセスできるように権限を付与します。この操作は一度だけ実施すれば十分です。
構成と使用:Ray リソースグループを作成する際に、[詳細設定] セクションでカスタムイメージを指定します。
ステップ 1:カスタムイメージの準備とビルド
Lindorm Ray パブリックイメージのアドレスを取得
Lindorm は、事前構成済みの Ray 環境を含むパブリックイメージを提供しています。これらのパブリックイメージをカスタムイメージのベースとして使用してください。
イメージプルアドレスのフォーマット:
docker pull lindorm-compute-public-registry.cn-hangzhou.cr.aliyuncs.com/lindorm-ray/ray:[image-tag]利用可能なタグ:
イメージタグ
Python バージョン
GPU サポート
2.50.1-1.1.1-py310-cpuPython 3.10
いいえ
2.50.1-1.1.1-py311-cpuPython 3.11
いいえ
2.50.1-1.1.1-py310-gpuPython 3.10
はい (CUDA プリインストール済み)
2.50.1-1.1.1-py311-gpuPython 3.11
はい (CUDA プリインストール済み)
依存関係のバージョンに関するガイダンス
互換性を確保するため、公式 Ray 依存関係リストに基づいて依存関係のバージョンを選択してください。たとえば、pip install -c requirements_compiled.txt で依存関係をインストールできます。
Dockerfile の記述
Lindorm Ray パブリックイメージを起点とし、必要な依存関係をインストールするコマンドを追加した Dockerfile を作成します。
Dockerfile の例:
FROM lindorm-compute-public-registry.cn-hangzhou.cr.aliyuncs.com/lindorm-ray/ray:2.50.1-1.1.1-py311-cpu
RUN pip install --no-cache-dir numpy pandas/tmp/ray/、/opt/、または Ray インストールディレクトリ(およびそのサブディレクトリ)内のファイルを変更しないでください。たとえば、Python 3.11 を搭載した Lindorm Ray イメージの場合、Ray インストールディレクトリは /home/ray/anaconda3/lib/python3.11/site-packages/ray/ です。
イメージのビルド
Dockerfile を含むディレクトリで、次のコマンドを実行してイメージをビルドします。
docker build -t your-image-name:tag .ステップ 2:イメージを ACR にプッシュ
ビルドが完了したら、ローカルイメージを ACR リポジトリにプッシュします。
ACR へのログイン
docker login --username=<your-username> <your-registry>イメージのタグ付けとプッシュ
docker tag your-image-name:tag <your-registry>/<namespace>/<repo>:tag
docker push <your-registry>/<namespace>/<repo>:tagステップ 3:Lindorm に ACR アクセス権を付与
Ray リソースグループ作成ページで、Lindorm サービスがご利用の ACR イメージリポジトリにアクセスできるように権限を付与します。
「ACR カスタムイメージへのパスワード不要アクセス」をクリックします。
権限付与ダイアログボックスで、権限付与を確定します。
この権限付与は一度だけ実施すれば十分です。以降のリソースグループ作成時には再度権限を付与する必要はありません。
ステップ 4:カスタムイメージの使用
権限付与後、Ray リソースグループを作成する際に、[詳細設定] セクションに以下の JSON 構成を入力してカスタムイメージを指定します。
{
"clusterConfig.image.custom.acr.instanceId":"your-acr-instanceId",
"clusterConfig.image":"your-full-image-addr"
}構成パラメーター:
パラメーター | 説明 | 例 |
| ご利用の ACR インスタンス ID。 |
|
| 完全なイメージアドレス。 |
|
構成が完了したら、カスタムイメージを使用する Ray リソースグループを作成できます。