

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

# サービスマネージドフリートのコンテナサポート
<a name="fleet-container-support"></a>

コンテナのサポートにより、Linux のサービスマネージドフリートはDockerイメージ内でジョブアクションを実行できます。デフォルトのDockerキュー環境は、Amazon ECR からイメージをプルします。キュー環境をカスタマイズして、別のコンテナレジストリプロバイダーに対して認証したり、別のコンテナレジストリプロバイダーからプルしたりできます。詳細については、*「Deadline Cloud デベロッパーガイド*[」のDocker「キュー環境をカスタマイズ](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/containers-queue-environment.html#containers-queue-customize)する」を参照してください。

キュー環境でイメージを選択すると、Deadline Cloud はフリートのワーカーDockerにルートレスをインストールして設定します。サービスはジョブセッションごとに 1 つのコンテナを起動し、セッションが終了すると停止します。

## コンテナサポートの仕組み
<a name="fleet-container-how-it-works"></a>

コンテナサポートは、フリートとキュー間で設定を分割します。


| [リソース]  | 設定 | 目的 | 
| --- | --- | --- | 
| Fleet | Docker Linux サービスマネージドフリートのソフトウェアアドオン | 各ワーカーにルートレスDockerおよびオプションの GPU 統合をインストールします | 
| キュー | Docker デフォルトのキュー環境と Amazon ECR イメージ URI | イメージをプルし、セッションコンテナで環境およびタスクアクションを実行します | 
| キューフリートの関連付け | Dockerが有効なフリートに関連付けられたコンテナキュー | コンテナジョブを を提供するワーカーにのみルーティングします Docker | 

Deadline Cloud Dockerはルートレスモードで実行されます。コンテナアクションは、権限のない `job-user` ID として実行され、ワーカーにルートアクセスを提供しません。

デフォルトのキュー環境は、コンテナ内の同じパスにジョブセッションディレクトリをマウントします。したがって、埋め込みファイル、ジョブアタッチメント、および設定された出力パスは、ジョブアクションで引き続き使用できます。

フリートに GPU インスタンスがある場合、Deadline Cloud は Container Device Interface (CDI) サポートを設定します。キュー環境は、特権コンテナアクセスを必要とせずに GPU をコンテナで使用できるようにします。

## 前提条件
<a name="fleet-container-prerequisites"></a>

開始する前に、次のリソースが必要です。
+ Deadline Cloud ファーム。
+ Linux サービスマネージドフリート、またはフリートを作成するアクセス許可。コンテナのサポートは では使用できませんWindows。
+ 更新できるキューロールとフリートロール。
+ Amazon ECR プライベートリポジトリ内のタグ付けされたイメージ。手順については、[「Deadline Cloud デベロッパーガイド」の「コンテナイメージの構築、タグ付け、プッシュ](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/containers-build-push.html)」を参照してください。 **

## フリートとキューを設定する
<a name="fleet-container-configure"></a>

**コンテナのサポートを設定するには**

1.  AWS マネジメントコンソールにサインインし、[Deadline Cloud コンソール](https://console.aws.amazon.com/deadlinecloud/home)を開きます。

1. ファームを開き、**フリート**を選択し、サービスマネージドフリートを作成または編集します。

1. フリートオペレーティングシステムで、**Linux** を選択します。

1. **追加設定**で、**コンテナのサポート**を見つけます。**Enable Docker (Engine Docker をインストールし、ECR プルアクセスを設定します)** を選択します。

1. フリートロールを選択または作成します。コンソールは、ワーカーが Amazon ECR からイメージをプルできるように、 `AmazonEC2ContainerRegistryReadOnly` AWS 管理ポリシーをアタッチします。

1. (オプション) **ストレージ機能**で**、永続ストレージ**を選択して、ワーカーライフサイクルイベント全体でDockerレイヤーとアプリケーションキャッシュを保持します。詳細については、「[サービスマネージドフリートの永続的ストレージ](volumes.md)」を参照してください。

1. フリートの作成または更新を完了します。

1. キューを作成または編集します。**デフォルトのキュー環境**の**環境タイプ**で、 を選択します**Docker**。

1. **コンテナイメージ URI **には、Amazon ECR リポジトリとイメージタグを選択するか、完全なイメージ URI を次の形式で入力します。

   ```
   {{account-id}}.dkr.ecr.{{region}}.amazonaws.com/{{repository}}:{{tag}}
   ```

1. キューロールを選択または作成します。コンソールは管理`AmazonEC2ContainerRegistryReadOnly`ポリシーをアタッチして、キュー環境が Amazon ECR に認証してイメージをプルできるようにします。

1. キューを Docker対応フリートに関連付けます。

## コンテナのサポートを確認する
<a name="fleet-container-verify"></a>

フリートがアクティブになったら、次の設定を確認します。
+ フリートの **Software アドオン**値には が含まれます**Docker**。
+ キューはDockerデフォルトの環境を使用し、選択したイメージ URI を表示します。
+ キューは、 Dockerが有効になっている Linux サービスマネージドフリートにのみ関連付けられます。

フリートを更新しても、すでに実行されているワーカーは置き換えられません。Docker ソフトウェアアドオンをすべてのワーカーにすぐに適用するには、「」の説明に従ってフリートをドレインして再起動します[フリート設定を更新する](smf-update-config.md)。

## 次の手順
<a name="fleet-container-next-steps"></a>

フリートとロールの設定を自動化するには、「」を参照してください[を使用した Docker対応フリートの作成 AWS CLI](fleet-container-support-cli.md)。

イメージワークフロー、ポータブルジョブテンプレート、キュー環境の内部、ストレージマウント、セキュリティガイダンスについては、*「Deadline Cloud デベロッパーガイド*」の[「コンテナでポータブルジョブを実行する](https://docs.aws.amazon.com/deadline-cloud/latest/developerguide/containers.html)」を参照してください。