docker logs 显示的日志,默认是保存在哪里?

docker logs 实际上是读取容器运行时的 标准输出(stdout) 和 标准错误(stderr),而这些日志默认会被 Docker 守护进程保存到宿主机的文件里。


📌 默认保存位置

  • 在 Linux 系统 下,默认日志驱动是 json-file。

  • 每个容器的日志会保存在:

    /var/lib/docker/containers/<容器ID>/<容器ID>-json.log

  • 例如:

    复制代码
    /var/lib/docker/containers/fae320d08268/fae320d08268-json.log
  • 这个文件就是 docker logs <容器ID> 命令背后读取的来源。


⚠️ 注意事项

  • 容器删除后:对应目录和日志文件也会被删除。

  • 日志文件可能很大 :如果容器长时间运行且输出很多日志,json.log 文件会快速膨胀,占满磁盘。

  • 解决办法 :可以在 /etc/docker/daemon.json 中配置日志驱动和参数,例如:

    json 复制代码
    {
      "log-driver": "json-file",
      "log-opts": {
        "max-size": "500m",
        "max-file": "3"
      }
    }

    这样每个容器的日志文件最大 500MB,最多保留 3 个文件,超过会自动轮转。


✅ 总结:
docker logs 默认显示的内容,实际存放在宿主机的 /var/lib/docker/containers/<容器ID>/<容器ID>-json.log 文件中。

相关推荐
我不会起名字32213 小时前
Redis 从 0 到 1(九):主库宕机 30 秒自动切主——1 主 2 从 3 哨兵 + Go 客户端
redis·docker·sentinel·高可用·哨兵
姜鱼问生15 小时前
每次开机手动检查 6 样东西?我写了个 2 秒自检脚本
运维·网络·nginx·docker·容器
wangqiaowq15 小时前
PostgresSQL server Docker 安装部署
运维·docker·容器
程序员阿明15 小时前
docker搭建视频流服务go2rtc,webRTC
docker·容器·webrtc
TTATTC16 小时前
让 16 个 AI 员工在飞书群自我协同:基于 OpenClaw 的多 Agent 敏捷 Squad 拓扑与一人公司实操
docker·开源
TTATTC16 小时前
从分片续传到 SPI 插件化扩展:Free-FS 企业级文件系统核心架构与万能预览技术拆解
docker·开源
JavaPub-rodert17 小时前
Docker 容器为什么 stop 半天停不下来?讲透 PID 1、SIGTERM、SIGKILL、僵尸进程与 tini
运维·docker·容器
EterNity_TiMe_21 小时前
Docker服务越装越多记不住端口?我用Fenrus把NAS里的常用入口整理成一个导航页
运维·人工智能·docker·ai·容器·cpolar
吴声子夜歌21 小时前
Docker入门与实战——libnetwork插件化网络功能
网络·docker·容器
江湖有缘1 天前
Docker实战 | 使用Docker部署HarborGuard容器安全扫描平台
安全·docker·容器