docker添加了新的镜像数据盘,数据盘迁移步骤
使用整体迁移法迁移 Docker 镜像后,可以在确认迁移成功且新数据盘正常使用后,删除旧数据目录来释放空间1。
# 停止 Docker 服务
sudo systemctl stop docker# 停止 socket 监听器
sudo systemctl stop docker.socket开启
sudo systemctl status docker
sudo systemctl status docker.socket
- 停止 Docker 服务:使用命令
sudo systemctl stop docker
停止 Docker 服务,防止迁移过程中数据写入导致损坏。 - 备份原有数据(可选但推荐):运行
sudo cp -a /var/lib/docker /var/lib/docker.bak
,将原 Docker 数据目录备份,避免迁移失败造成数据丢失。 - 迁移数据到新数据盘:假设新数据盘挂载点为
/mnt/new - docker - data
,执行sudo rsync -aXS /var/lib/docker/ /mnt/new - docker - data/
进行数据复制。复制完成后,可通过sudo diff -r /var/lib/docker /mnt/new - docker - data
对比检查数据完整性。 - 修改 Docker 配置文件:编辑
/etc/docker/daemon.json
文件,添加或修改"data - root": "/mnt/new - docker - data"
,保存并关闭文件。若该文件不存在,直接创建并添加上述内容。 - 重启 Docker 服务:先执行
sudo systemctl daemon - reload
重新加载系统服务配置,再运行sudo systemctl restart docker
启动 Docker 服务。 - 验证迁移结果:使用
sudo docker images
查看原有镜像是否存在,执行sudo docker ps -a
检查原有容器状态是否正常。若能正常列出镜像和容器信息,说明迁移成功。 - 删除旧数据目录:确认 Docker 运行正常且新数据盘无问题后,使用
sudo rm -rf /var/lib/docker
删除旧数据目录,释放原数据盘空间。