Docker迁移/var/lib/docker之后镜像容器丢失问题

迁移/var/lib/docker时,如果目标目录少写一个/,/etc/docker/daemon.json中的data-root后面需要多加一级目录docker。

若迁移命令如下

bash 复制代码
rsync -avz /var/lib/docker /home/docker/

在/etc/docker/daemon.json中添加如下内容

bash 复制代码
"data-root": "/home/docker"

若迁移命令如下

bash 复制代码
rsync -avz /var/lib/docker /home/docker

在/etc/docker/daemon.json中添加如下内容

bash 复制代码
"data-root": "/home/docker/docker"

重启docker

bash 复制代码
systemctl daemon-reload
 
systemctl restart docker
 
systemctl enable docker

此外,还需要对迁移之后的目录添加docker用户权限

  1. 调整目录权限

为了确保 Docker 相关目录可以被 docker 用户组的成员访问,你需要修改权限,确保 docker 用户组能够访问所有相关目录。

你可以使用以下命令,修改 /home/docker 下的所有目录的权限,使得 docker 用户组具有适当的访问权限:

bash 复制代码
sudo chmod -R 770 /home/docker

这个命令会给 /home/docker 下的所有目录和文件赋予 docker 用户组完全的读、写、执行权限,且其他用户无法访问。

2. 确保目录所有权正确

你还需要确保 /home/docker 目录及其子目录的所有者和用户组是 root:docker。使用以下命令来修改所有者和用户组:

bash 复制代码
sudo chown -R root:docker /home/docker
相关推荐
InfinitePlus2 小时前
Docker MySQL搭建一主一从
mysql·docker
952363 小时前
Spring-cloud配置中心
java·spring·spring cloud·微服务
Wzx1980124 小时前
python沙箱和docker沙箱你选对了吗?
开发语言·python·docker
CodeDevMaster4 小时前
关于PaddleOCR-VL部署与使用说明
docker·llm
Ghost Face...6 小时前
龙芯Docker全流程:安装到离线迁移实战
java·docker·eureka
JavaPub-rodert9 小时前
我又把自己的 Go 后台管理系统升级了一遍:文件管理、2GB 上传、私有文件预览、Docker 镜像全安排上了
开发语言·docker·golang·shiyuadmin
爱码少年9 小时前
嗯,腾讯云个人小站Docker镜像下载功能已下线,压力给到阿里云镜像站
docker
Zhu75810 小时前
在docker环境部署frp
运维·docker·容器
燐妤12 小时前
腾讯云 Ubuntu 24.04 + Docker 同时部署多个 Python Web 项目:没有域名也能用 IP 访问
ubuntu·docker·腾讯云
承渊政道13 小时前
飞牛NAS部署Immich:搭建家庭相册并实现远程访问
运维·服务器·docker·内网穿透·cpolar·nas·immich