基础命令
docker logs <容器ID/名称>
:查看容器全部日志。docker logs -f <容器ID>
:实时查看日志(类似tail -f
)。docker logs --tail 100 <容器ID>
:仅显示最后100行日志。docker logs --since "2025-01-01" <容器ID>
:查看指定时间后的日志。docker logs -t <容器ID>
:显示带时间戳的日志。查看容器内文件日志
docker exec -it <容器ID> /bin/bash
。cat /var/log/app.log
(需提前将日志输出到文件)。命令行过滤
grep
筛选关键字:docker logs <容器ID> | grep "ERROR"
。awk
提取特定字段(如时间戳)。第三方工具
日志驱动配置
json-file
驱动,日志存储在/var/lib/docker/containers/<容器ID>/<容器ID>-json.log
。/etc/docker/daemon.json
配置其他驱动(如syslog
、fluentd
),实现集中管理。fluentd
或Logstash
将日志发送至ELK,避免本地日志堆积。--log-opt max-size=10m --log-opt max-file=3
限制单个日志文件大小和数量。参考来源: