9
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【ECS】 【Fargate】TASK実行container内でTask ID を取得するスクリプト

Posted at

調べてもあまりいい方法がなかったので、ゴリゴリですがとりあえず作ってました。

TD;DR

  • curlとpython -cを使ってやりました。

  • タスクメタデータエンドポイントバージョン 3を使用

    • サポートバージョンは以下の通り
      • EC2:1.21.0以降のバージョン
      • Fargate : v1.3.0以降のバージョン
  • curlで${ECS_CONTAINER_METADATA_URI}/taskを取得、pythonでparseしてTaskARNから取得

#!/bin/bash

METADATA=$(curl ${ECS_CONTAINER_METADATA_URI}/task)
python3 -c "import json; meta=json.loads('$METADATA'); task_id=meta['TaskARN'].split('/')[-1]; print(task_id)" > ./task_id
TASK_ID=$(cat ./task_id)

TASK IDが取りたい

  • TASK実行container内でTask IDをもとに処理したいときがあった
  • けど、環境変数は用意されてない
  • METADATAはとれるので、そこからparseした

まとめ

  • 一応取ることはできた
  • けど、本当はTASK実行container内でやることではない気がする
  • 普通に環境変数用意してほしい

参考

9
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?