docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > 更换docker工作目录

Docker默认目录空间不足怎么迁移到新磁盘

作者:小趴菜吖

Docker默认目录/var/lib/docker经常因磁盘空间不足而影响使用,本文手把手教你如何在CentOS7下安全地将Docker工作目录迁移到新挂载的磁盘(如/home/docker-data),包括停止容器、修改配置、重启服务等关键步骤,避免服务中断,彻底解决磁盘占满问题

使用环境

由于默认系统盘比较小docker镜像很容易就占满,需要挂载新的磁盘修改docker的默认工作目录

步骤一

停掉docker及其容器

如果在docker配置文件中开启了

"live-restore": true

会导致docker服务停止但容器还在持续运行

这种情况下更换docker工作目录会对正在运行的容器服务造成极大影响!!! 

所以更换目录必须停掉所有正在运行的容器

docker stop `docker ps ` ## 停止所有正在运行的容器
systemctl stop docker 

步骤二

更换操作目录

cp -rf /var/lib/docker /data/docker-data/
或者
mv /var/lib/docker /data/docker-data/

步骤三

在docker的配置文件中添加字段指定新的工作目录

[root@mongodb-2 ~]# cat /etc/docker/daemon.json 
{
  "data-root": "/data/docker-data/docker",   ## 新添加字段,指定其新的工作目录路径
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "max-concurrent-downloads": 30,
  "max-concurrent-uploads": 15,
    "registry-mirrors": [ "https://43352a8907ad44bb8fad9057c1d4e38b.mirror.swr.myhuaweicloud.com" ],
  "live-restore": true
}

步骤四

重新加载配置文件及重启docker

[root@mongodb-2 ~]# systemctl daemon-reload
[root@mongodb-2 ~]# systemctl restart docker

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文