项目地址:https://dozzle.dev/
这款工具相比较一些重量级的工具,比如 ELK 系列而言,实在是太轻量了,容器版本不过 10MB 左右大小。
主要原因是,它不存储和处理日志,仅仅提供实时查看功能,类似我们日常使用 ps、top 一样,使用它可以减少我们在服务器上低效执行 docker logs 或者 docker-compose logs 等类似命令的执行。
docker-compose.yml 配置文件如下:
version: "3"
services:
dozzle:
image: amir20/dozzle:v3.5.2
container_name: dozzle
environment:
DOZZLE_FILTER: "name=redis|etcd" #容器过滤条件
DOZZLE_KEY: "TOKEN_KEY" #TOKEN
DOZZLE_USERNAME: "admin" #登录用户名
DOZZLE_PASSWORD: "123456" #登录密码
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
ports:
- 8080:8080
restart: always
将上面的内容保存为 docker-compose.yml ,使用 docker-compose up -d 启动程序之后,我们便可以通过浏览器访问 localhost:8080 来查看当前相同机器(容器网卡)内的容器的实时日志,以及已停止容器的历史运行日志了。
以上environment配置参数如下:
Flag | Env Variable | Default |
---|---|---|
--addr | DOZZLE_ADDR | :8080 |
--base | DOZZLE_BASE | / |
--level | DOZZLE_LEVEL | info |
n/a | DOCKER_API_VERSION | not set |
--tailSize | DOZZLE_TAILSIZE | 300 |
--filter | DOZZLE_FILTER | "" |
--username | DOZZLE_USERNAME | "" |
--password | DOZZLE_PASSWORD | "" |
--key | DOZZLE_KEY | "" |
容器过滤条件参考:https://docs.docker.com/engine/reference/commandline/ps/#filtering