docker日志的故事——详解Docker日志运维
2017-11-20 17:15
585 查看
最近在用Docker做一个人工智能平台相关的项目,人工智能所用到的科学计算库比较多,要用docker打包。
所用到的科学计算库是著名的caffe库,用python进行调用的。
caffe库有一个特点,就是在进行科学计算的时候,会不可控地输出计算过程中的中间过程,而且还很详细,这就造成了docker生成的日志特别大,不一会就会造成硬盘被占满。
docker 日志的默认存储路径在:
/var/lib/docker/containers/
目录下,该目录中的文件夹是docker id,在每个文件夹下会存有扩展名为log的文件,即是docker的日志文件,日志文件采用JSON格式存储,方便日志被收集处理。
如果想要强制删除日志,需要关闭docker,然后才能将日志文件夹删除掉,否则删除的只是之前关闭docker后没有清除的日志。
其实,扩展名为log的这个文件是可以单独删除的,可以写一个定期执行的脚本来删除该日志。
不过,最好的办法,就是在docker运行的时候,提供相关参数,阻止不必要日志的产生:
sudo docker run --log-driver none xxxxx
这里,我们在run后面加入
所用到的科学计算库是著名的caffe库,用python进行调用的。
caffe库有一个特点,就是在进行科学计算的时候,会不可控地输出计算过程中的中间过程,而且还很详细,这就造成了docker生成的日志特别大,不一会就会造成硬盘被占满。
docker 日志的默认存储路径在:
/var/lib/docker/containers/
目录下,该目录中的文件夹是docker id,在每个文件夹下会存有扩展名为log的文件,即是docker的日志文件,日志文件采用JSON格式存储,方便日志被收集处理。
如果想要强制删除日志,需要关闭docker,然后才能将日志文件夹删除掉,否则删除的只是之前关闭docker后没有清除的日志。
其实,扩展名为log的这个文件是可以单独删除的,可以写一个定期执行的脚本来删除该日志。
不过,最好的办法,就是在docker运行的时候,提供相关参数,阻止不必要日志的产生:
sudo docker run --log-driver none xxxxx
这里,我们在run后面加入
--log-driver参数,可以阻止日志文件的写入,防止占用系统资源。
相关文章推荐
- 运维之我的docker-docker日志收集
- 滚动 docker 中的 nginx 日志思路详解
- 运维之我的docker-swarm节点运行和服务运行详解
- 详解Docker守护进程的配置及日志
- Docker持续部署图文详解 | 高效运维最佳实践06
- 如何利用MongoDB存储Docker日志详解
- 第三十六课 Spark之TaskScheduler Spark shell案例运行日志详解、TaskScheduler和SchedulerBackend、FIFO与FAIR、Task运行时本地性算法详
- 详解Docker学习笔记之搭建一个JAVA Tomcat运行环境
- commons-loging 、log4j 、slf4j 、LogBack日志相关知识详解
- Docker網絡管理的未來命令_Linux Docker網絡管理的未來 命令用法详解:
- 日志收集平台Graylog2以及Nxlog的安装与配置(基于docker)
- Log4J日志配置详解
- linux tail命令的使用方法详解 和 Linux 服务器查看日志基本命令
- Dockerfile文件详解
- Linux 日志切割工具cronolog详解
- Java日志管理:Logger.getLogger()和LogFactory.getLog()的区别(详解Log4j)
- 运维自动化之Cobbler系统安装详解
- MySQL 日志 详解
- Docker安装graylog和详解
- Kubernetes 集群日志管理 - 每天5分钟玩转 Docker 容器技术(180)