本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon ECS容器簡介
Amazon ECS容器代理程式提供 API操作,用於收集代理程式正在執行的容器執行個體的詳細資訊,以及在該執行個體上執行的相關任務。您可以使用容器執行個體內的 curl命令來查詢 Amazon ECS容器代理程式 (連接埠 51678),並傳回容器執行個體中繼資料或任務資訊。
重要
您的容器執行個體必須具有允許存取 Amazon IAM的角色,ECS才能擷取中繼資料。如需詳細資訊,請參閱Amazon ECS容器執行個體IAM角色。
若要檢視容器執行個體中繼資料,請透過 登入您的容器執行個體,SSH然後執行下列命令。中繼資料包括容器執行個體 ID、註冊容器執行個體的 Amazon ECS叢集,以及 Amazon ECS容器代理程式版本資訊。
curl -s http://localhost:51678/v1/metadata | python3 -mjson.tool
輸出:
{ "Cluster": "cluster_name
", "ContainerInstanceArn": "arn:aws:ecs:region
:aws_account_id
:container-instance/cluster_name
/container_instance_id
", "Version": "Amazon ECS Agent - v1.30.0 (02ff320c)" }
若要檢視容器執行個體上執行的所有任務的相關資訊,請透過 登入您的容器執行個體,SSH然後執行下列命令:
curl http://localhost:51678/v1/tasks
輸出:
{ "Tasks": [ { "Arn": "arn:aws:ecs:us-west-2:012345678910:task/default/example5-58ff-46c9-ae05-543f8example", "DesiredStatus": "RUNNING", "KnownStatus": "RUNNING", "Family": "hello_world", "Version": "8", "Containers": [ { "DockerId": "9581a69a761a557fbfce1d0f6745e4af5b9dbfb86b6b2c5c4df156f1a5932ff1", "DockerName": "ecs-hello_world-8-mysql-fcae8ac8f9f1d89d8301", "Name": "mysql", "CreatedAt": "2023-10-08T20:09:11.44527186Z", "StartedAt": "2023-10-08T20:09:11.44527186Z", "ImageID": "sha256:2ae34abc2ed0a22e280d17e13f9c01aaf725688b09b7a1525d1a2750e2c0d1de" }, { "DockerId": "bf25c5c5b2d4dba68846c7236e75b6915e1e778d31611e3c6a06831e39814a15", "DockerName": "ecs-hello_world-8-wordpress-e8bfddf9b488dff36c00", "Name": "wordpress" } ] } ] }
您可以檢視在該容器執行個體上執行之特定任務的資訊。若要指定特定任務或容器,請將以下其中一項附加到請求:
-
任務 ARN(
?taskarn=
)task_arn
-
容器的 Docker ID (
?dockerid=
)docker_id
若要使用容器的 Docker ID 取得任務資訊,請透過 登入您的容器執行個體,SSH然後執行下列命令。
注意
版本 1.14.2 之前的 Amazon ECS容器代理程式需要完整 Docker 容器IDs來進行介紹 API,而不是以 顯示的簡短版本docker ps。您可以藉由在容器執行個體上執行 docker ps --no-trunc 命令,取得容器完整的 Docker ID。
curl http://localhost:51678/v1/tasks?dockerid=79c796ed2a7f
輸出:
{ "Arn": "arn:aws:ecs:us-west-2:012345678910:task/default/e01d58a8-151b-40e8-bc01-22647b9ecfec", "Containers": [ { "DockerId": "79c796ed2a7f864f485c76f83f3165488097279d296a7c05bd5201a1c69b2920", "DockerName": "ecs-nginx-efs-2-nginx-9ac0808dd0afa495f001", "Name": "nginx", "CreatedAt": "2023-10-08T20:09:11.44527186Z", "StartedAt": "2023-10-08T20:09:11.44527186Z", "ImageID": "sha256:2ae34abc2ed0a22e280d17e13f9c01aaf725688b09b7a1525d1a2750e2c0d1de" } ], "DesiredStatus": "RUNNING", "Family": "nginx-efs", "KnownStatus": "RUNNING", "Version": "2" }