

# Amazon Q Developer를 사용하여 Amazon ECS 콘솔에서 태스크 정의 권장 사항 제공
<a name="using-amazon-q"></a>

Amazon ECS 콘솔에서 JSON 편집기를 사용하여 태스크 정의를 생성할 때 Amazon Q Developer를 사용하여 태스크 정의에 대한 AI 생성 코드 제안을 제공할 수 있습니다.

인라인 채팅 기능을 사용하여 Amazon Q Developer에 대화형 인터페이스를 사용해 태스크 정의 JSON을 생성, 설명 또는 리팩터링하도록 요청할 수 있습니다. 태스크 정의의 어느 시점에서든 생성된 제안을 주입하고 제안된 변경 사항을 수락하거나 거부할 수 있습니다. 또한 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. **생성(Create)**을 선택합니다.