ecs-cli compose up - Amazon Elastic Container Service

ecs-cli compose up

Amazon ECS 태스크 정의가 아직 없으면 Compose 파일로 태스크 정의를 생성하고, 클러스터에서 그 태스크의 인스턴스 하나를 실행합니다.

중요

설명된 일부 기능은 최신 Amazon ECS CLI 버전에만 제공될 수도 있습니다. 최신 버전을 가져오는 방법에 대한 자세한 내용은 Amazon ECS CLI 설치 섹션을 참조하세요.

구문

ecs-cli compose up [--region region] [--cluster-config cluster_config_name] [--ecs-profile ecs_profile] [--aws-profile aws_profile] [--cluster cluster_name] [--launch-type launch_type] [--create-log-groups] [--force-update] [--tags key1=value1,key2=value2] [--disable-ecs-managed-tags] [--help]

옵션

이름

설명

--region, -r region

사용할 AWS 리전을 지정합니다. 기본값은 configure 명령을 이용해 구성된 클러스터입니다.

유형: 문자열

필수 항목 여부: 아니요

--cluster-config cluster_config_name

사용할 Amazon ECS 클러스터 구성의 이름을 지정합니다. 기본값은 기본값으로 설정된 클러스터 구성입니다.

유형: 문자열

필수 항목 여부: 아니요

--ecs-profile ecs_profile

사용할 Amazon ECS 프로필 구성의 이름을 지정합니다. 기본값은 configure profile 명령을 사용하여 구성된 프로필입니다.

유형: 문자열

필수 항목 여부: 아니요

--aws-profile aws_profile

사용할 AWS 프로필을 지정합니다. ~/.aws/credentials의 기존 명명된 프로필로부터 AWS 자격 증명을 사용할 수 있습니다.

유형: 문자열

필수 항목 여부: 아니요

--cluster, -c cluster_name

사용할 Amazon ECS 클러스터 이름을 지정합니다. 기본값은 configure 명령을 이용해 구성된 클러스터입니다.

유형: 문자열

필수 항목 여부: 아니요

--launch-type launch_type

사용할 시작 유형을 지정합니다. 사용할 수 있는 옵션은 FARGATE 또는 EC2입니다. 시작 유형에 대한 자세한 내용은 Amazon ECS 시작 유형 섹션을 참조하세요.

이러한 옵션을 사용하면 클러스터 구성에 저장된 기본 시작 유형이 재정의됩니다.

유형: 문자열

필수 항목 여부: 아니요

--create-log-groups

Compose 파일에 지정된 CloudWatch 로그 그룹을 생성합니다.

필수 항목 여부: 아니요

--force-update

태스크를 강제로 다시 시작합니다.

필수 항목 여부: 아니요

--tags key1=value1,key2=value2

AWS 리소스에 적용할 메타데이터를 지정합니다. 각 태그는 키와 값(선택 사항)으로 구성됩니다. 태그는 key1=value1,key2=value2,key3=value3 형식을 사용합니다. Amazon ECS 관리형 태그는 --disable-ecs-managed-tags 플래그를 사용하여 특별히 비활성화하지 않는 한 새로운 Amazon 리소스 이름(ARN) 및 리소스 식별자(ID) 형식을 선택한 경우 기본적으로 활성화됩니다. 자세한 내용은 리소스 태그 지정 섹션을 참조하세요.

유형: 키-값 쌍

필수 항목 여부: 아니요

--disable-ecs-managed-tags

Amazon ECS 관리형 태그를 비활성화합니다. 자세한 내용은 리소스에 결제용 태그 지정 섹션을 참조하세요.

필수 항목 여부: 아니요

--help, -h

지정한 명령에 대한 도움말을 표시합니다.

필수 항목 여부: 아니요

리소스 태그 지정

Amazon ECS CLI는 AWS 리소스에 대한 리소스 태그 형식의 메타데이터 추가를 지원합니다. 각 태그는 키와 값(선택 사항)으로 구성됩니다. 리소스 태그는 비용 할당, 자동화 및 액세스 제어에 사용될 수 있습니다. 자세한 내용은 Amazon ECS 리소스 태깅 섹션을 참조하세요.

ecs-cli compose up 명령을 사용할 때 --tags 플래그를 사용하면 메타데이터 태그를 태스크 정의 및 태스크에 추가할 수 있습니다. Amazon ECS 관리형 태그는 --disable-ecs-managed-tags 플래그를 사용하여 비활성화하지 않으면 기본적으로는 활성화 상태입니다. 자세한 정보는 리소스에 결제용 태그 지정을 참조하십시오.

예제

태스크 네트워킹이 가능하고 AWS Fargate 시작 유형을 사용하는 태스크 정의 등록

이 예제는 hello-world Compose 파일의 프로젝트 이름 hello-world.yml을 사용하여 태스크 정의를 생성합니다. Fargate 시작 유형을 위한 네트워크 구성과 태스크의 추가 ECS 파라미터를 지정합니다. 그런 다음 Fargate 시작 유형을 사용하여 태스크의 인스턴스 하나를 실행합니다.

hello-world.yml이라는 Docker Compose 파일 예제:

version: '3' services: nginx: image: nginx:latest ports: - "80:80" logging: driver: awslogs options: awslogs-group: tutorial awslogs-region: us-east-1 awslogs-stream-prefix: nginx

ecs-params.yml이라는 ECS 파라미터 파일 예제:

version: 1 task_definition: ecs_network_mode: awsvpc task_execution_role: ecsTaskExecutionRole task_size: cpu_limit: 512 mem_limit: 2GB services: nginx: essential: true run_params: network_configuration: awsvpc_configuration: subnets: - subnet-abcd1234 - subnet-dcba4321 security_groups: - sg-abcd1234 - sg-dcba4321 assign_public_ip: ENABLED

명령:

ecs-cli compose --project-name hello-world --file hello-world.yml --ecs-params ecs-params.yml up --launch-type FARGATE

출력:

INFO[0000] Using ECS task definition TaskDefinition=ecscompose-hello-world:5