Amazon ECS 容器中繼資料檔案 - Amazon Elastic Container Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon ECS 容器中繼資料檔案

從 Amazon ECS 容器代理程式 1.15.0 版開始,容器或主機容器執行個體中提供各種容器中繼資料。透過啟用此功能,您可從容器或主機容器執行個體內查詢關於任務、容器和容器執行個體的資訊。中繼資料檔案是在主機執行個體上建立,並以 Docker 磁碟區的形式掛載在容器中,因此在 AWS Fargate 上託管任務時無法使用。

清除容器時,會清除主機執行個體上的容器中繼資料檔案。您可以使用 ECS_ENGINE_TASK_CLEANUP_WAIT_DURATION 容器代理變數,來調整執行此動作的時間。如需詳細資訊,請參閱自動 Amazon ECS 任務和映像清除

容器中繼資料檔案位置

容器中繼資料檔案預設會寫入下列主機和容器路徑。

  • 對於 Linux 執行個體:

    • 主機路徑:/var/lib/ecs/data/metadata/cluster_name/task_id/container_name/ecs-container-metadata.json

      注意

      Linux 主機路徑假設在啟動代理時,會使用預設資料目錄掛載路徑 (/var/lib/ecs/data)。如果您並非使用 Amazon ECS 最佳化 AMI (或 ecs-init 套件來啟動和維護容器代理程式),請務必將 ECS_HOST_DATA_DIR 代理程式組態變數設定為容器代理程式狀態檔案所在的主機路徑。如需詳細資訊,請參閱Amazon ECS 容器代理程式組態

    • 容器路徑:/opt/ecs/metadata/random_ID/ecs-container-metadata.json

  • 對於 Windows 執行個體:

    • 主機路徑:C:\ProgramData\Amazon\ECS\data\metadata\task_id\container_name\ecs-container-metadata.json

    • 容器路徑:C:\ProgramData\Amazon\ECS\metadata\random_ID\ecs-container-metadata.json

不過,為方便存取,容器中繼資料檔案位置設定為容器內部的 ECS_CONTAINER_METADATA_FILE 環境變數。您可以使用下列命令在容器內部讀取檔案內容:

  • 對於 Linux 執行個體:

    cat $ECS_CONTAINER_METADATA_FILE
  • 對於 Windows 執行個體 (PowerShell):

    Get-Content -path $env:ECS_CONTAINER_METADATA_FILE