Docker容器日志

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: docker容器在运行时,会持续不断地产生日志,这些日志在什么地方,如何查看和管理这些日志呢? 1、查看docker日志 docker logs 容器ID #此时会看到很多的日志输出出来,(如果容器运行时间比较久的话) 对应在/var/lib/docker/containers目录下,每个容器ID.

docker容器在运行时,会持续不断地产生日志,这些日志在什么地方,如何查看和管理这些日志呢?

1、查看docker日志

docker logs 容器ID
#此时会看到很多的日志输出出来,(如果容器运行时间比较久的话)

对应在/var/lib/docker/containers目录下,每个容器ID对应一个文件夹,存放的都是容器的日志,如下图
image

2、docker日志管理

docker容器日志会持续不断地输出,如果不进行清理,最终会导致磁盘空间不足

  • 2.1、将文件内容清空
cat /dev/null > *-json.log

注:docker容器正在运行,那么使用rm -rf方式删除日志后,通过df -h会发现磁盘空间并没有释放。原因是在Linux或者Unix系统中,通过rm -rf或者文件管理器删除文件,将会从文件系统的目录结构上解除链接(unlink)。如果文件是被打开的(有一个进程正在使用),那么进程将仍然可以读取该文件,磁盘空间也一直被占用。

  • 2.2、max-size限制docker容器日志大小
    限制单个容器大小,重启容器
nginx: 
  image: nginx:1.12.1 
  restart: always 
  logging: 
    driver: "json-file” 
    options: 
      max-size: "5g" 
      max-file: 3

限制宿主机上所有容器大小,重启docker进程和容器
/etc/docker/daemon.json

{
  "registry-mirrors": ["https://registry.docker-cn.com"], 
  "insecure-registries": ["registry.docker-cn.com"],
  "max-concurrent-downloads": 10,
  "log-driver": "json-file",
  "log-level": "debug",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  }
}

systemctl daemon-reload
systemctl restart docker

docker-swam集群更新方式:sudo docker service update --log-driver json-file --log-opt max-size=1m --log-opt max-file=3 pbblyrmsof5t

参考:https://docs.docker-cn.com/engine/admin/logging/json-file/#usage

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
1月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
1月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
333 5
|
1月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
164 6
kde
|
1月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
kde
406 4
|
3月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
785 108
|
4月前
|
存储 监控 测试技术
如何将现有的应用程序迁移到Docker容器中?
如何将现有的应用程序迁移到Docker容器中?
413 57
|
4月前
|
存储 监控 Java
如何对迁移到Docker容器中的应用进行性能优化?
如何对迁移到Docker容器中的应用进行性能优化?
344 59
下一篇
oss云网关配置