全部產品
Search
文件中心

Simple Log Service:如何擷取Docker容器的Label和環境變數

更新時間:Nov 30, 2024

當您使用Logtail採集容器日誌時,可以通過Label和環境變數對待採集的容器進行過濾。Label指運行docker inspect命令時顯示的容器中繼資料中的標籤資訊,環境變數是在容器啟動時設定的運行時環境參數。本文介紹如何擷取容器的Label和環境變數。

重要

本文僅適合擷取Docker容器的Label和環境變數,採集K8s日誌容器過濾推薦使用K8s Pod標籤白名單K8s Pod標籤黑名單

擷取容器Label

  1. 登入容器所在的宿主機。ECS執行個體的登入步驟,請參見使用Workbench工具以SSH協議登入Linux執行個體

  2. 執行如下命令,列出所有正在啟動並執行容器。

    docker ps

    返回結果,其中f******a是容器ID。

    Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.
    CONTAINER ID  IMAGE                           COMMAND               CREATED        STATUS        PORTS                 NAMES
    f******a      docker.io/library/nginx:latest  nginx -g daemon o...  6 seconds ago  Up 7 seconds  0.0.0.0:8080->80/tcp  my-nginx
  3. 執行如下命令,擷取容器Label。

    docker inspect ${容器ID}

    返回結果中的Labels欄位表示容器標籤。

擷取容器環境變數

  1. 登入容器所在的宿主機。ECS執行個體的登入步驟,請參見使用Workbench工具以SSH協議登入Linux執行個體

  2. 執行如下命令,列出所有正在啟動並執行容器。

    docker ps

    返回結果,其中f******a是容器ID。

    Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.
    CONTAINER ID  IMAGE                           COMMAND               CREATED        STATUS        PORTS                 NAMES
    f******a      docker.io/library/nginx:latest  nginx -g daemon o...  6 seconds ago  Up 7 seconds  0.0.0.0:8080->80/tcp  my-nginx
  3. 執行如下命令,擷取容器的環境變數。

    docker exec ${容器ID} env