全部产品
Search
文档中心

日志服务:如何获取Docker容器的Label和环境变量

更新时间:Nov 29, 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