本文主要介绍了docker迁移数据目录的方法步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
查看磁盘使用
# du -hs /var/lib/docker/ 
237G    /var/lib/docker/
 
# docker system df
TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
Images              7                   2                   122.2GB             79.07GB (64%)
Containers          2                   2                   61.96GB             0B (0%)
Local Volumes       0                   0                   0B                  0B
Build Cache         0                   0                   0B                  0B
磁盘清理 (切勿轻易使用)
# docker system prune 命令可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以无tag的镜像。
# docker system prune -a 命令可以将没有容器使用Docker镜像都删掉。注意,这两个命令会把暂时关闭的容器,以及暂时没有用到的Docker镜像都删掉。
迁移数据
【停docker】
# systemctl stop docker
 
【创建新的docker目录】
# mkdir -p /home/docker/lib
 
【迁移 /var/lib/docker 目录】
(注:可直接mv,确保磁盘够大)
# rsync -avz /var/lib/docker /home/docker/lib/  
 
【增加配置】
查看  /etc/systemd/system/docker.service.d/devicemapper.conf是否存在。如果不存在,就新建。
# mkdir -p /etc/systemd/system/docker.service.d/
# vi /etc/systemd/system/docker.service.d/devicemapper.conf
 (注:devicemapper.conf 增加配置:同步的时候把父文件夹一并同步过来,实际上的目录应在 /home/docker/lib/docker )
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd  --graph=/home/docker/lib/docker
 
【重新加载 docker】 
# systemctl daemon-reload
# systemctl restart docker
# systemctl enable docker
 
【检查docker info】
# docker info | grep "Docker Root Dir"
是否变更为: /home/docker/lib/docker
 
【检查镜像】
# docker images
 
【清理原数据】
确定容器没问题后删除/var/lib/docker/目录中的文件。
# rm -rf /var/lib/docker

本文地址:https://www.linuxprobe.com/migrate-data-directory.html