

# Amazon Q Developer を使用して Amazon ECS コンソールでタスク定義のレコメンデーションを生成する
<a name="using-amazon-q"></a>

Amazon ECS コンソールで JSON エディタを使用してタスク定義を作成する場合、Amazon Q Developer を使用することで、タスク定義に AI 生成のコード提案を取得できます。

インラインチャット機能を使用して、会話インターフェイスを使用してタスク定義 JSON を生成、説明、またはリファクタリングするように Amazon Q Developer に依頼できます。生成された提案は、タスク定義の任意の時点で挿入し、提案された変更を承認または拒否できます。Amazon ECS では、Amazon Q Developer を利用するために既存のインライン提案機能も強化されました。

JSON エディタを使用してタスク定義を作成する場合、Amazon Q Developer にタスク定義をより迅速に作成するための推奨事項を提供してもらうことができます。プロパティベースのインライン提案を作成することも、Amazon Q Developer の提案を使用してサンプルコードのブロック全体をオートコンプリートすることもできます。

この機能は、Amazon Q Developer がサポートされているリージョンで使用できます。詳細は「[AWS Services by Regions](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/)」を参照してください。

## 前提条件
<a name="amazon-q-prerequisites"></a>

前提条件は次のとおりです。
+ コンソールでタスク定義を作成するユーザーには、コンソールのアクセス許可に加えて、レコメンデーションのための `codewhisperer:GenerateRecommendations` のアクセス許可とインラインチャットを使用するための `q:SendMessage` が必要になります。詳細については、「[Amazon Q Developer を使用して、コンソールで推奨事項を提供するために必要なアクセス許可](console-permissions.md#amazon-q-permission)」を参照してください。

## 手順
<a name="amazon-q-procedure"></a>

1. コンソール ([https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2)) を開きます。

1. ナビゲーションペインで、**タスクの定義** を選択します。

1. **[新しいタスク定義の作成]** メニューで、**[JSON で新しいタスク定義を作成する]** を選択します。

   **[タスク定義の作成]** ページを開きます。

   コンソールには、次のデフォルトテンプレートが用意されています。

   ```
   {
       "requiresCompatibilities": [
           "FARGATE"
       ],
       "family": "",
       "containerDefinitions": [
           {
               "name": "",
               "image": "",
               "essential": true
           }
       ],
       "volumes": [],
       "networkMode": "awsvpc",
       "memory": "3 GB",
       "cpu": "1 vCPU",
       "executionRoleArn": "arn:aws:iam::123456789012:role/ecsTaskExecutionRole"
   }
   ```

1. Amazon Q インライン提案ポップアップで、**[許可]** を選択します。

   ポップアップを閉じると、歯車アイコンで Amazon Q を有効にできます。

1. JSON エディタボックスで、JSON ドキュメントを編集します。

   Amazon Q でパラメータを作成して入力するには、追加する内容を含むコメントを入力します。以下の例では、コメントにより Amazon Q が太字の行を生成します。

   ```
   {
       "requiresCompatibilities": [
           "FARGATE"
       ],
       "family": "",
       "containerDefinitions": [
           {
               "name": "",
               "image": "",
               "essential": true
           },
           // add an nginx container using an image from Public ECR, with port 80 open, and send logs to CloudWatch log group "myproxy"
           {
               "name": "nginx",
               "image": "public.ecr.aws/nginx/nginx:latest",
               "essential": true,
               "portMappings": [
                   {
                       "containerPort": 80,
                       "hostPort": 80,
                       "protocol": "tcp"
                   }
               ],
               "logConfiguration": {
                   "logDriver": "awslogs",
                   "options": {
                       "awslogs-group": "myproxy",
                       "awslogs-region": "us-east-1",
                       "awslogs-stream-prefix": "nginx"
                   }
               }
           }
           
       ],
       "volumes": [],
       "networkMode": "awsvpc",
       "memory": "3 GB",
       "cpu": "1 vCPU",
       "executionRoleArn": "arn:aws:iam::123456789012:role/ecsTaskExecutionRole"
   }
   ```

1. インラインチャット機能を使用するには、線を強調表示し、星のアイコンを選択します。

   Amazon Q Developer チャットボックスが表示されます。

   リクエストを入力します。

   Amazon Q Developer は JSON を生成して更新します。

   変更を受け入れるには、**[すべて受け入れる]** を選択します。

1. **[作成]** を選択します。