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 文件中。

相关推荐
张忠琳12 小时前
【NVIDIA】 NVIDIA Container Toolkit v1.19.1 — OCI 模块超深度分析之三
云原生·容器·架构·kubernetes·nvidia
Elastic 中国社区官方博客14 小时前
将你的 Grafana Kubernetes 仪表板迁移到 Elastic Observability:相同的 PromQL,30 倍更快的查询
大数据·人工智能·elasticsearch·搜索引擎·容器·kubernetes·grafana
风曦Kisaki16 小时前
#企业级docker私有仓库构建:harbor仓库与阿里云镜像仓库
阿里云·docker·容器
期待着201317 小时前
docker 安装 ,在centos7.9
运维·docker·容器
骑上单车去旅行19 小时前
Docker Compose 命令完全指南:从构建到运维
docker·容器·eureka
前端Baymax20 小时前
K8s PodCrashLoopBackOff假阳性排查
云原生·容器·kubernetes
spider_xcxc20 小时前
K8s 部署学习笔记
docker·容器·kubernetes·云计算·k8s
java_logo20 小时前
Docker Compose 部署 Apache Superset:轻松搭建开源 BI 平台
docker·开源·apache·superset·轩辕镜像·superset部署方案·docker superset
zy happy20 小时前
VMware虚拟机添加新的硬盘
java·linux·jvm·docker
阿标在干嘛1 天前
从物理机到K8s:政策快报平台的容器化部署实践
云原生·容器·kubernetes