Docker迁移默认的/var/lib/docker 目录(避坑指南)

最近在做docker 数据文件的迁移,按指引创建,遇到了一些问题,把步骤和解决方案记录一下。

1. 停止docker服务

systemctl stop docker

2.创建docker新目录

mkdir -p /data/docker/lib

3.安装迁移软件包

yum install rsync -y

或者

sudo apt-get install rsync

4.开始迁移

rsync -avzP /var/lib/docker /data/docker/lib/

注:这个不是必须的,也可以用mv命令

5.修改docker配置文件

vim /lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock后添加--graph=/data/docker/lib

注意:这里有个坑,最新的docker版本(≥ version 23.0.0 ) 这个参数(–graph)要改为 --data-root ,也就是: --data-root=/data/docker/lib

6.重启docker

systemctl daemon-reload
systemctl restart docker

7.确认docker没有问题,删除原目录

rm -rf /var/lib/docker

请我喝杯咖啡吧~

支付宝
微信