Dozzle:Docker 容器实时日志查看器

Dozzle 是专为 Docker 打造的轻量开源实时日志查看器:快速部署、多容器日志聚合检索、当前文档提供 SQL 查询与 Webhook 告警。本文覆盖安装、界面、进阶能力与生产安全考量。

最佳实践
容器模块与编排港口插画

直接回答:Dozzle 是 Docker 专用的轻量实时日志 Web 界面——挂载 docker.sock 即自动发现全部容器,多窗口 tail、全文检索、按容器筛选一站搞定;当前文档提供 SQL 查询日志与 Webhook 告警。一条 docker run 命令部署,资源占用随日志吞吐、查询和连接数变化。

为什么不用 docker logs -f

多容器排障的经典狼狈:N 个终端窗口各 docker logs -f,滚屏找那一条关键错误。Dozzle 把碎片工作流收进一个干净的实时可检索界面,不引入重型日志栈的开销。

快速部署

docker run -d --name dozzle -p 127.0.0.1:8080:8080 -v dozzle_data:/data -v /var/run/docker.sock:/var/run/docker.sock   amir20/dozzle:latest

挂 docker.sock 让它枚举容器——这也意味着必须把 Dozzle 放在认证之后(它等价于 root 级访问)。

界面与进阶能力

  • 容器列表 + 实时日志流 + 全文搜索
  • 多容器并排对比
  • SQL 查询(按安装版本核对):用 SELECT 语法结构化检索日志
  • Webhook 告警:错误模式触发通知

生产与安全考量

docker.sock 等价于 Docker API 全权——Dozzle 必须鉴权(自带简单密码/OIDC),绝不裸暴露公网。将 socket 以 :ro 挂载并不能把 Docker API 变为只读;仍需访问控制、可信网络和最小授权代理。默认无认证,完成鉴权与 TLS 前不要对外发布。

常见问题(FAQ)

Q:Dozzle 会保存日志历史吗?
A:不长期保存——它是实时查看器,可回看范围受容器日志驱动与保留配置限制,不一定使用 json-file。需要独立于容器生命周期保留日志时,可将日志采集到集中存储。例如向观测云接入时,按 DataKit 日志采集配置采集源,验证容器重建前后的日志仍能按服务和时间检索。

Q:Swarm/K8s 能用吗?
A:Swarm 有 agent 模式可聚合多节点;当前版本也提供 K8s 模式,需设置 DOZZLE_MODE=k8s 和最小 RBAC。

Q:资源占用?
A:不能据工具体积推断内存;需在目标吞吐、查询量与并发连接数下测量。

官方参考

本文依据官方文档整理,示例未在本文中进行运行验证。生产部署需按所用版本、权限和实际负载验证。

延伸阅读

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台