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
相关推荐
gsls2008088 小时前
JVM 堆内存参数 & Docker 容器适配,一次讲清楚
jvm·docker·容器
Lumbrologist10 小时前
【零基础部署】Docker 部署 AutoGen 多 Agent 对话框架保姆级教程
运维·docker·容器
Plastic garden12 小时前
Docker compose ruoyi示例
运维·docker·容器
qq_4523962312 小时前
第十四篇:《Docker Swarm 生产实践:堆栈部署与配置管理》
运维·docker·容器
qq_4523962313 小时前
第十三篇:《Docker Swarm 集群基础》
运维·docker·容器
JAVA社区14 小时前
Java高级全套教程(十三)—— 分布式锁超详细实战详解(原理+三种方案企业级落地)
java·开发语言·分布式·spring cloud·面试·java-zookeeper
取经蜗牛15 小时前
docker环境中redis连接三种场景配置指南,物理机、wsl、docker
redis·docker·容器
尼莫点nemo15 小时前
docker-builder:把 .devcontainer/ 从手写变成一句话生成
docker
zandy101115 小时前
Hermes Agent 2026年6月最新安装教程
docker·github·agent
情绪总是阴雨天~17 小时前
Docker 基础概念完全指南:从零理解容器化技术
docker·容器