当前位置: 首页 > article >正文

Docker根目录迁移与滚动日志设置

问题

最近使用docker手动导入离线镜像,总是出现,如下问题:

no space left on the device

简单来说,就是docker根目录满了。

解决

查询当前docker info设置位置

使用如下命令,查询docker根目录位置:

docker info

输入上述命令后,找到其中一行包含Docker Root Dir:里面就包含了当前Docker根目录位置。

/etc/docker/daemon.json

创建docker默认配置文件,上面这个配置文件位置是在Linux上面生效。

# 先停止docker
systemctl stop docker
sudo vim /etc/docker/daemon.json

具体内容如下:

{
	"data-root": "/data/zyl/docker",
	"log-driver": "json-file",
  	"log-opts": {
    	"max-size": "10m",
    	"max-file": "3"
  	}
}

修改这个配置文件,主要就是设置一下docker根目录位置,以及设置一下滚动日志文件限制,这样docker的日志文件就不会无限增长。最大为10m,最多3个文件。

迁移原有docker数据

cp -arp /var/lib/docker/* /data/zyl/docker

将原有的根目录数据,复制到新的根目录中。

重新加载配置

systemctl daemon-reload
systemctl start docker

重启docker容器

上面的步骤,都是在root用户中完成。当docker启动成功后,切回普通用户,重启所有docker容器即可。

总结

在使用docker的过程中,需要注意docker的根目录磁盘位置,默认情况下docker的日志是没有限制的,所有,除了要修改根目录位置到比较大的地方,还需要设置docker滚动日志方式。

参考

  • daemon-configuration-file
  • JSON File logging driver
  • Docker修改默认存储路径 /var/lib/docker
  • Docker目录/var/lib/docker/containers文件太大
  • Change Docker Default Root Data Directory
  • Relocating the Docker root directory

http://www.kler.cn/a/584848.html

相关文章:

  • react和vue 基础使用对比
  • 数据库MySQL原理(相关程序)
  • 瞭解安全防火牆術語(適合剛接觸Firepower的使用者)
  • leetcode:728. 自除数(python3解法)
  • 第6节: 网络安全入门:ACL与NAT技术详解
  • ConcurrentModificationException:检测到并发修改完美解决方法
  • 计算机二级web易错点(2)-选择题
  • 通过C++编程语言实现“数据结构“课程中的树
  • Pycharm(五)序列的操作
  • 基于ragflow中deepdoc对pdf文档的rag系统
  • QQuick3D-Camera的介绍
  • 【2025前端高频面试题——系列三之vue生命周期:vue3】
  • 机器学习(李宏毅)——Explainable AI
  • 【UniApp跳转外部链接】实现方案
  • (全)2024下半年真题 系统架构设计师 综合知识 答案解析01
  • Ceph(2):Ceph简介
  • OpenText ETX 助力欧洲之翼航空公司远程工作升级
  • 98. 验证二叉搜索树
  • CSS—网格布局Grid
  • 浅谈交易暨百城联动线下技术交流会-南宁站圆满举行