Docker容器实时日志查看器Dozzle
什么是 Dozzle?
Dozzle是一个小型轻量级应用程序,具有基于Web的界面来监控Docker日志。Dozzle不存储任何日志文件,仅用于实时监控您的容器日志。
先看个官方的动图
老苏已转成了视频,源文件地址:https://github.com/amir20/dozzle/raw/master/.github/demo.gif?raw=true
软件特点
- 容器名称智能模糊搜索🤖
- 使用正则表达式搜索日志🔦
- 内存占用小🏎
- 用于查看多个日志的分屏
- 轻松下载日志
- 内存和 CPU 使用情况的实时统计信息
- 使用用户名和密码进行身份验证🚨
命令行安装
与容器相关的应用,都需要绑定挂载 /var/run/docker.sock ,包括我们之前安装的 portainer、watchtower,Glances,Netdata 、lazydocker 等。
什么是 /var/run/docker.sock ?
/var/run/docker.sock是Docker API的主要入口,简单地说,它是Docker守护进程(Docker daemon)默认监听的Unix域套接字(Unix domain socket),容器中的进程可以通过它与Docker守护进程进行通信。

图片来自:https://betterprogramming.pub/about-var-run-docker-sock-3bfd276e12fd
但是群晖的 Docker 管理器并不支持挂载 /var/run/docker.sock 文件,所以这次我们需用命令行来安装
docker cli 安装
如果你熟悉命令行,可能用 docker cli 更快捷
1 | # 运行容器 |
docker-compose 安装
将下面的内容保存为 docker-compose.yml 文件
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 dozzle 目录 |
更多的设置可以参考官方的说明:https://github.com/amir20/dozzle#environment-variables-and-configuration
运行
在浏览器中输入 http://群晖IP:8183 就能看到主界面

左侧可以选择查看的容器

默认列出的都是在运行的容器,可以在系统中设置把停止的容器也显示出来

停止的容器是是灰色的

也同样可以获取到日志信息

日志支持下载

Dozzle 定位很清晰,功能不多,但简单好用,是款不错的小工具。
参考文档
amir20/dozzle: Realtime log viewer for docker containers.
地址:https://github.com/amir20/dozzleDozzle - Log viewer for Docker
地址:https://dozzle.dev/