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
相关推荐
BullSmall15 小时前
第三方软件安全-Dependency‑Track Docker 部署
安全·docker·容器
harmony&16 小时前
Docker 容器技术从入门到实战:容器、网络、存储与监控全解析
docker·云原生
IT大白鼠18 小时前
Docker 私有仓库管理:Harbor 企业级仓库搭建与镜像全生命周期管理
运维·docker·容器
bgy666621 小时前
从零上手 Docker,容器技术完整入门指南
运维·docker·容器
随遇而安zx1 天前
SpringCloud---Spring Cloud 分布式任务调度(XXL-Job / ElasticJob)
分布式·spring cloud
pride.li1 天前
Docker教程-Docker安装与镜像配置
运维·docker·容器
bgy66661 天前
Docker Swarm 容器编排实战指南
运维·docker·容器
未秃头的程序猿1 天前
一次秒杀把服务打挂了,我用Sentinel规则配置化救了回来
java·后端·spring cloud
力江1 天前
GitLab 私有化部署实战 —— 从 Omnibus 到 Docker 的踩坑之旅
docker·容器·gitlab
深念Y1 天前
Docker 镜像体积从 110MB 降到 13MB 后端服务的瘦身
运维·docker·容器