docker日志监控dozzle,高性能,性能消耗小

2026年7月3日10:46:00

性能消耗很小
在这里插入图片描述

现在大多数应用都是使用docker部署,使用docker compose把所有的docker的配置文件写在一起,这样的话就有个麻烦的地方,就是查看每个应用控制台输出的日志,因为很多时候不是每个人都有服务器的权限,或者说有些人员不能去登录服务器查询,这个时候有个小控制面板就很好了。

特色

  • 智能模糊搜索容器名称
  • 使用正则表达式的搜索日志
  • 使用SQL查询的搜索日志
  • 内存占用较小
  • 分屏查看多日志
  • 实时统计数据,包括内存和CPU使用率
  • 支持转发代理授权的多用户认证
  • 群聚模式支持
  • 用于监控多台Docker主机的代理模式
  • 暗黑模式
  • Dozzle已经用数百个容器测试过。不过,它不支持离线搜索。像Loggly、Papertrail或Kibana这样的产品更适合实现完整的搜索功能。

官方文档:https://github.com/amir20/dozzle
使用golang开发,内存消耗小,非常适合中小项目需要docker日志,几乎不需要改造其他的应用,就可以直接读取容器里的日志,非常方便debug

在这里插入图片描述
部署
docker-compose.yaml

    dozzle:
        image: amir20/dozzle:latest
        container_name: dozzle
        ports:
            - "8080:8080"
        volumes:
            - /var/run/docker.sock:/var/run/docker.sock:ro
            - ./users.yml:/data/users.yml:ro
            - dozzle-data:/data
        environment:
            # 开启简易账号密码认证(必须加)
            DOZZLE_AUTH_PROVIDER: simple
            # 初始化最近8000行日志,读取越多,消耗的内存越多
            DOZZLE_TAILSIZE: 8000
            DOZZLE_NO_ANALYTICS: "true"

生成users.yml

docker run --rm amir20/dozzle:latest generate admin --password "admin@local" --email admin@local --name Admin > users.yml

修改docker配置文件

cat daemon.json
{
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m",
    "max-file": "10",
    "compress": "true"
  }
}

保存最近10个文件,每个日志文件100m

注意:
1,dozzle不保存日志,docker没有配置日志,就直接读取的控制台输出
2,比较小应用和读取最近的日志,如果你需要保存在远程提供离线存储和查询,Loggly、Papertrail或Kibana
3,注意配置账号和密码,防止别人登录,如果想减少麻烦,直接把"max-size": "1000m"改大,DOZZLE_TAILSIZE: 50000,这样中小应用基本一周的日志差不多了,如果没打很多info 或者 warning的话基本足够了
4,dozzle的作者的 https://github.com/amir20/dtop 也很有趣

posted on 2026-07-03 11:14  zh7314  阅读(1)  评论(0)    收藏  举报