Amazon Elastic Container Service
開発者ガイド (API バージョン 2014-11-13)

ecs-cli compose up

Amazon ECS タスク定義が存在しない場合は、Compose ファイルから作成し、そのタスクの 1 つのインスタンスをクラスターで実行します。

重要

記載されている機能の一部は、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

構成ファイルで指定された CloudWatch ロググループを作成します。

必須: いいえ

--force-update

タスクの再起動を強制します。

必須: いいえ

--tags key1=value1,key2=value2

AWS リソースに適用されるメタデータを指定します。各タグはキーとオプションの値で構成されます。タグは次の形式を使用します: key1=value1,key2=value2,key3=value3。詳細については、「リソースのタグ付け」を参照してください。

タイプ: キー値ペア

必須: いいえ

--disable-ecs-managed-tags

Amazon ECS 管理のタグを無効にします。詳細については、「請求用のリソースにタグを付ける」を参照してください。

必須: いいえ

--help, -h

指定したコマンドのヘルプテキストを表示します。

必須: いいえ

リソースのタグ付け

Amazon ECS CLI では AWS リソースにリソースタグの形式でメタデータを追加できます。各タグはキーとオプションの値で構成されます。リソースタグはコスト配分、オートメーション、アクセスコントロールに使用できます。詳細については、「AWS タグ付け戦略」を参照してください。

ecs-cli compose up コマンドを使用する場合、--tags フラグを使用してタスク定義およびタスクにメタデータタグを追加できます。--disable-ecs-managed-tags フラグを使用して特別に無効にしない限りは、Amazon ECS マネージドタグがデフォルトで有効になります。詳細については、「請求用のリソースにタグを付ける」を参照してください。

AWS Fargate 起動タイプを使用するタスクでタスクネットワーキングを使用する場合のタスク定義を登録する

この例では、hello-world.yml Compose ファイルからプロジェクト名 hello-world でタスク定義を作成します。追加の ECS パラメータは、Fargate 起動タイプを使用するタスクとネットワーク設定用に指定されます。これにより、タスクの 1 つのインスタンスが Fargate 起動タイプを使用して実行されます。

サンプル Docker Compose ファイル hello-world.yml:

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 parameters ファイル ecs-params.yml:

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