首页 > 其他 > 详细

docker数据目录迁移

时间:2021-01-12 16:30:05      阅读:23      评论:0      收藏:0      [点我收藏+]

场景介绍

?最近公司的项目出现无响应的问题,排查后发现是磁盘已满导致的,df -h 显示已占用达到了100%。幸好服务器还有一块数据盘,之前已作为mysql的数据目录,现在打算再把docker也迁移至数据盘。
?在这里和大家分享下经历,难免会有些许错误,请各位看官不吝赐教。

方案介绍

?考虑了下,决定采用软连接的方式解决,好处是能保证docker原有配置的情况下将数据目录迁移至数据盘,不修改配置文件也意味着降低误操作的概率。更好的是相比于直接挂载磁盘方案,一个数据盘可以为多个应用服务,管理十分方便,而且实际操作只需几条命令即可。
?理论上任何软件的数据迁移都可以用软连接的方式解决。在这之前的mysql也是使用软连接解决的。

方案实施

?默认情况下Docker的存放位置为:/var/lib/docker
可以通过下面命令查看具体位置:

docker info | grep "Docker Root Dir"
  1. 首先停掉Docker服务:
systemctl stop docker 
  1. 然后根据上面查到的路径,移动整个/var/lib/docker目录到数据盘的目的路径:
mv /var/lib/docker /home/docker

?必须使用mv命令,cp会丢失权限信息,可能会导致意想不到的bug。
3. 加入软连接

ln -s /home/docker /var/lib/docker

?先看下/home/docker下的目录,确定挂载成功在启动docker,即使挂载有问题,无碍,也可停止停止docker后重新操作
4. 启动docker

systemctl start docker 

?这时候启动Docker时发现存储目录依旧是/var/lib/docker,但是实际上是存储在数据盘的。

docker数据目录迁移

原文:https://www.cnblogs.com/dancesir/p/14266539.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!