如何在 ServerBox 里查看 Docker 容器日志并实时跟踪
打开容器日志
在容器详情页或容器列表里,点「日志」按钮即可打开该容器的日志面板。
ServerBox 底层通过 SSH 执行 docker logs 命令,然后解析输出渲染成可读的界面。

日志面板功能
| 功能 | 说明 |
|---|---|
| 实时跟踪 | 打开后自动 docker logs -f,新日志实时追加到屏幕 |
| 行数限制 | 可以设显示最近 100/500/1000/全部行 |
| 时间范围 | 指定开始和结束时间,只看那个时段的日志 |
| 颜色区分 | stdout 和 stderr 不同颜色显示 |
| 搜索 | 按关键词在日志里搜索,高亮匹配 |
| 导出 | 复制或导出到文件 |
典型排查流程
容器里的应用出问题时,典型排查步骤:
- 打开容器日志面板
- 先看最近 100 行有没有明显错误(红色)
- 如果没有,开实时跟踪(-f),然后去触发问题(比如发一个请求),看新日志里有没有报错
- 用关键词搜索具体错误码或异常类型
- 定位到问题后去容器终端里进一步排查
日志保留策略
docker logs 展示的是容器 stdout/stderr 的内存缓冲区,这个缓冲区默认大小有限(Docker 默认 10MB)。如果你的应用日志非常频繁:
- 建议配置 logging driver(如 json-file 配 max-size + max-file)
- 或者把日志写到文件/日志系统里(ELK、Loki 等)
- 不然缓冲区装满后旧日志会被丢弃,ServerBox 也就看不到了
日志太大怎么办
有些容器日志可能有几万行:
- ServerBox 默认最多加载 5000 行,避免 App 卡死
- 如果需要看更早的,指定时间范围或者缩小行数
- 终端里手动
docker logs --tail 20000 <容器名>配合 grep 可能更灵活
常见日志查看命令对应关系
| 你想做的 | ServerBox 操作 | 命令行等价 |
|---|---|---|
| 看最近 100 行 | 行数限制选 100 | docker logs --tail 100 <name> |
| 实时跟踪 | 打开实时跟踪 | docker logs -f <name> |
| 只看错误输出 | 过滤器选 stderr | docker logs <name> 2>&1 >/dev/null |
| 看今天的日志 | 时间范围选今天 | docker logs --since "2024-01-01T00:00:00" <name> |