运行 Promtail 容器并指向 Loki
在这一步,你将使用刚刚创建的配置文件启动 Promtail 容器。该命令会将你的配置文件和主机的日志目录都挂载到容器中。
执行以下 docker run 命令来启动 Promtail:
docker run -d --name promtail --network monitoring-net -v $(pwd)/promtail.yml:/etc/promtail/config.yml -v /var/log:/var/log grafana/promtail -config.file=/etc/promtail/config.yml
以下是该命令中各个参数(flags)的解释:
-d: 在分离模式(detached mode,即后台)下运行容器。
--name promtail: 为容器指定一个名称,以便于引用。
--network monitoring-net: 将容器连接到与 Loki 和 Grafana 相同的网络。
-v $(pwd)/promtail.yml:/etc/promtail/config.yml: 将你本地的 promtail.yml 挂载到容器内预期的位置(/etc/promtail/config.yml)。
-v /var/log:/var/log: 将主机的 /var/log 目录挂载到容器中,以便 Promtail 可以读取日志文件。
-config.file=/etc/promtail/config.yml: 告诉容器内 Promtail 进程使用哪个配置文件。
运行该命令后,Docker 将输出新容器的唯一 ID。你可以使用 docker ps 命令来验证容器是否正在运行。
docker ps
你应该在运行中的容器列表中看到 promtail、loki 和 grafana。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
... grafana/promtail "/usr/bin/promtail -c…" A few seconds ago Up a few seconds 0.0.0.0:9080->9080/tcp promtail
... grafana/grafana "/run.sh" About a minute ago Up About a minute 0.0.0.0:8080->3000/tcp grafana
... grafana/loki "/usr/bin/loki -conf…" About a minute ago Up About a minute 0.0.0.0:3100->3100/tcp, 9095/tcp loki