promtail 在 docker 中通过官方镜像启动并挂载配置与日志目录实现日志采集:使用 grafana/promtail:2.14.1 镜像,挂载 /var/log、配置文件及 /proc、/sys/fs/cgroup,配合 host 网络直连 loki。

在 Docker 容器中安装并配置 Promtail 实现日志流式采集,核心是:不直接“安装”(因 Promtail 是单二进制,无需传统安装),而是通过官方镜像启动容器,并挂载配置文件与日志目录,使其监听宿主机或同网络内服务的日志文件。
使用官方 Promtail 镜像启动容器
Promtail 官方提供轻量级 Docker 镜像(grafana/promtail),无需构建镜像或手动下载二进制。推荐指定稳定版本(如 2.14.1),避免使用 latest 带来的不确定性:
docker run -d \ --name promtail \ --restart=unless-stopped \ -v /var/log:/var/log:ro \ -v /path/to/promtail-config.yaml:/etc/promtail/config.yml:ro \ -v /proc:/proc:ro \ -v /sys/fs/cgroup:/sys/fs/cgroup:ro \ --network host \ grafana/promtail:2.14.1 \ -config.file=/etc/promtail/config.yml
说明:
- /var/log 挂载为只读,使 Promtail 可读取宿主机系统日志(如 /var/log/syslog 或 /var/log/messages)
- /proc 和 /sys/fs/cgroup 是可选但推荐挂载,用于采集容器运行时元信息(如容器名、PID)
- --network host 简化网络配置,让 Promtail 直接使用宿主机网络访问 Loki(若 Loki 在宿主机或同一网络,也可改用自定义 bridge 网络 + 正确 DNS/hosts)
编写 promtail-config.yaml 配置文件
关键在于定义 clients(目标 Loki 地址)和











