Dozzle | 一键查看所有Docker&Podman容器(container)日志
First | 首先
Dozzle 是一个轻量级的程序
使用Web界面即可查看所有容器(container)的日志
但请注意:它(Dozzle)是实时的且并不存储任何日志文件
OS&APP Version | 系统&软件版本
OS

Podman

APP
V8.5.1

Start | 开始
Docker cli
首先我们来拉取镜像
docker pull amir20/dozzle:latest
然后我们来运行它
docker run --name dozzle -d --volume=/var/run/docker.sock:/var/run/docker.sock -p 8080:8080 amir20/dozzle:latest
我们可以看到我们需要做的就是将docker.sock挂载到Dozzle即可
其中映射的端口是host的8080
Podman cli
Docker能干的
Podman当然也可以
因为Podman没有守护进程 相应的也就没有docker.sock
使用podman info命令来检查是否启用了remote socket
remoteSocket:
exists: true
path: /run/podman/podman.sock
如果 exists值为true则表示已启用
若remoteSocket并未启用我们可以点击如下链接查看相应指南
https://github.com/containers/podman/blob/main/docs/tutorials/socket_activation.md
开启了remote socket 后面直接运行使用cli运行即可
podman run --volume=/run/user/1000/podman/podman.sock:/var/run/docker.sock -d -p 8080:8080 amir20/dozzle:latest
# 记得将/run/user/1000/podman/podman.sock替换为实际Path
Podman Quadlet
[Unit]
Description=Dozzle is a small lightweight application with a web based interface to monitor Docker logs. It doesn’t store any log files. It is for live monitoring of your container logs only.
After=network-online.target
Wants=network-online.target
Before=shutdown.target
[Container]
AutoUpdate=registry
ContainerName=dozzle
Image=docker.io/amir20/dozzle
Volume=/run/podman/podman.sock:/var/run/docker.sock:ro
PublishPort=127.0.0.1:30001:8080
[Install]
WantedBy=multi-user.target
Use | 使用
▼ 安装完成后打开相应的url即可开始使用Dozzle界面主要包含
-
Host 详情
- CPU
- 内存
- 容器个数
- Docker&Podman版本
-
容器详情
- 名称
- 运行于哪个主机
- 状态
- 创建时间
- Avg CPU
- Avg MEM

▼ 点击相应容器即可看到对应log 右上角同步显示当前容器资源使用情况

▼ 此时将鼠标移至右上角还可显示更多选项
- 下载log
- 清除log
- 搜索log

当前版本(v8.5.1)允许在选项当中增加start/stop等选项但默认关闭
可以使用DOZZLE_REMOTE_AGENT环境变量开启此选项
▼ 以下是各启动方式增加此变量的方法
# Docker Cli #
docker run --volume=/var/run/docker.sock:/var/run/docker.sock -p 8080:8080 amir20/dozzle --enable-actions
# Docker compose #
services:
dozzle:
image: amir20/dozzle:latest
volumes:
- /var/run/docker.sock:/var/run/docker.sock
ports:
- 8080:8080
environment: DOZZLE_ENABLE_ACTIONS=true
# Podman Quadlet #
[Unit]
Description=Dozzle is a small lightweight application with a web based interface to monitor Docker logs. It doesn’t store any log files. It is for live monitoring of your container logs only.
After=network-online.target
Wants=network-online.target
Before=shutdown.target
[Container]
AutoUpdate=registry
ContainerName=dozzle
Image=docker.io/amir20/dozzle
Volume=/run/podman/podman.sock:/var/run/docker.sock
PublishPort=127.0.0.1:30001:8080
Environment="DOZZLE_ENABLE_ACTIONS=true"
[Install]
WantedBy=multi-user.target

Ex | 拓展
With Haproxy
如果你使用haproxy做反向代理
▼ 那么主要配置为您呈上
acl dozzle hdr_reg(host) -i xxx.xxx
use_backend dozzle-s if dozzle
backend dozzle-s
mode http
server dozzle-s 127.0.0.1:30001
Over | 总结
上述简要了介绍了一下Dozzle的部署和使用过程
实际上Dozzle还有很多功能比如
- 代理模式(将Dozzle暴露给其他的Dozzle示例)
- 远程主机
- SQL Engine
在这里就不介绍了 后期如果用到再更新记录
Learn from | 抄袭
同时感谢作者的付出