博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决docker数据文件过大导致根磁盘满的问题
阅读量:5957 次
发布时间:2019-06-19

本文共 729 字,大约阅读时间需要 2 分钟。

背景:

    最近在线上使用的docker主机发现根目录容量快满了,一番查找,发现是docker的data文件过大了。     我们知道docker数据默认是存放在/var/lib/docker下的,我们可以在启动时用-g --graph=""参数,把数据目录更改到其他容量大的地方去。但是对于在使用中的docker来说,直接修改这个目录路径,会导致镜像和容器都丢失了,所以修改参数这个方法适用于初始化docker的时候使用。

   对于又想解决根分区容量满,又不想更改数据存储路径的我来说,我不想更改任何docker的参数和数据,所以我在自己的虚机机环境上尝试把这些数据迁移到容量较大的磁盘上去,再用链接的方式把数据链接到原来的位置,保证环境尽可能不变动。

操作:

  1:关闭docker容器和docker进程:

1
# /etc/init.d/docker stop

  2:迁移数据:(假设我要迁移到/mnt/docker)

1
# mv /var/lib/docker /mnt/

  3:制作目录链接

1
2
3
4
# ln -s /mnt/docker /var/lib/docker
#  cd /var/lib
# ll
lrwxrwxrwx  1 root    root      11 Apr 13 10:52 docker -> 
/mnt/docker

   4:启动docker和容器:

1
# /etc/init.d/docker start

该实验在我的环境中测试有效。应该没有什么大问题,如果有什么忽略的地方,请大家指正!

本文转自 icenycmh 51CTO博客,原文链接:http://blog.51cto.com/icenycmh/1915496,如需转载请自行联系原作者
你可能感兴趣的文章
Intellij idea断点 Debugger slow: Method breakpoints my dramatically slow down debugging
查看>>
C指针 的一些练习
查看>>
第一个JSP程序
查看>>
KeyDown,KeyPress 和KeyUp
查看>>
MongoDB 聚合管道(Aggregation Pipeline)
查看>>
AngularJS之初级Route【一】(六)
查看>>
Spring MVC+Mybatis 执行存储过程,使用Map进行参数的传递
查看>>
Node。js 访问gmail
查看>>
SQL各种连接查询详解(左连接、右连接..)
查看>>
将DataTable转换成CSV文件
查看>>
将文本文件的内容存储在DataSet中的方法总结
查看>>
在C#代码中应用Log4Net(三)Log4Net中配置文件的解释
查看>>
ubuntu16.4中开启vncserver进行远程桌面
查看>>
shell-IF判断
查看>>
【转】Maven实战(九)---模块聚合和继承
查看>>
CloudSim介绍和使用
查看>>
VC++ 获取当前模块的路径(dll/exe)
查看>>
Shell命令_Cron使用
查看>>
jvm调优具体参数配置
查看>>
POJ2425 A Chess Game[博弈论 SG函数]
查看>>