😎
ECS-Execコマンドでコンテナログインする際のスニペット
ECS Execコマンドを実行してコンテナログインする際に、コンソール画面からタスクIDを確認してコマンド指定するのが面倒なため、スニペットを記載する。
- AS-IS:
- コンソール画面から実行中のタスクIDを確認して、aws ecs execute-commandにタスクIDを指定して実行する
- TO-BE:
- AWS CLIでタスクIDを取得して、aws ecs execute-commandにタスクIDを指定して実行する
スニペットは以下の通り:
CLUSTER_NAME="xxx"
SERVICE_NAME="xxx"
CONTAINER_NAME="xxx"
# タスクARN取得
TASK_ARN=$(aws ecs list-tasks --cluster $CLUSTER_NAME --service-name $SERVICE_NAME --desired-status RUNNING --query 'taskArns[0]' --output text)
# ECS Exec実行
aws ecs execute-command --cluster $CLUSTER_NAME --task $TASK_ARN --container $CONTAINER_NAME --command "/bin/bash" --interactive
補足
スクリプトを実行する前に、以下の値を設定する必要がある:
-
CLUSTER_NAME: ECSクラスター名 -
SERVICE_NAME: ECSサービス名 -
CONTANER_NAME: ECSコンテナ名
CLUSTER_NAMEとSERVICE_NAMEは、以下のコンソール画面のパンくずから確認する。

CONTAINER_NAMEはコンテナのタスクから確認する。
Discussion