1、安装插件

这里镜像的标签不要用latest,这个标签是两年前的镜像,且安装时最好把/etc/docker/daemon.json中设置的镜像源删除,不然会导致拉取不到镜像
[root@localhost ~]# docker plugin install grafana/loki-docker-driver:main --alias loki --grant-all-permissions
main: Pulling from grafana/loki-docker-driver
Digest: sha256:ff2fe930cc1a8ae1431123517d8ae5716444cf2b86b712c6fcdb37baf894db9d
e1222e361726: Complete
Installed plugin grafana/loki-docker-driver:main
安装完成之后可以查看是否安装成功
[root@localhost sim]# docker plugin ls
ID NAME DESCRIPTION ENABLED
cb840c504f21 loki:main Loki Logging Driver true

插件的其他操作:

停用

docker plugin disable loki --force

升级

docker plugin upgrade loki grafana/loki-docker-driver:latest --grant-all-permissions

启用

docker plugin enable loki

重启docker

systemctl restart docker

卸载

docker plugin disable loki --force
docker plugin rm loki

2、运行loki+grafana+promtail

下载docker-compose文件
wget https://raw.githubusercontent.com/grafana/loki/v2.8.0/production/docker-compose.yaml -O docker-compose.yaml
启动服务
docker-compose -f docker-compose.yaml up

3、配置容器日志写入loki

#docker直接部署时,可以通过–log-driver来指定为loki
docker run --rm --name=grafana --log-driver=loki --log-opt loki-url=“http://YOUR_IP:3100/loki/api/v1/push” --log-opt max-size=50m --log-opt max-file=10 grafana/grafana
–log-driver=loki 指定日志驱动器为loki
–log-opt loki-url 则指定了loki的url
–log-opt max-size 日志最大大小
–log-opt max-file 日志文件最大数量

#docker-compose启动容器时,通过/etc/docker/daemon.json文件对所有容器收集日志
{
“debug” : true,
“log-driver”: “loki”,
“log-opts”: {
“loki-url”: “http://IP:3100/loki/api/v1/push”,
“loki-batch-size”: “400”,
“loki-retries”: 5,
“max-size”: “50m”,
“max-file”: “10”
}
}

也可以单独在某个docker-compose文件中对该组容器日志进行收集
logging:
driver: loki
options:
loki-url: “http://YOUR_IP:3100/loki/api/v1/push”
max-size: “50m”
max-file: “10”

4、重新启动docker,再将容器全部重启,否则loki无法收集到日志。

docker-compose down
docker-compose up -d

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐