1、停止Docker服务

systemctl stop docker

2、备份原数据(可选)

强烈建议备份,啥都有个万一...

cp -r /var/lib/docker /var/lib/docker_backup

3、迁移至Docker数据目录

3.1 创建目标目录

mkdir /mnt/data/docker   # '/mnt/data/docker'换成你想要存储的地址

3.2 修改Docker配置

编辑Docker配置文件 /etc/docker/daemon.json(若不存在则新建):

vim /etc/docker/daemon.json

在daemon.json里添加以下内容,如果有自定义加速源,请把原{}里的内容加到此内容后边

{
  "data-root": "/mnt/data/docker"
}

3.3 同步原数据到新目录

rsync -avx /var/lib/docker/ /mnt/data/docker/

4. 重启Docker服务

systemctl start docker
systemctl status docker  # 检查状态

5. 验证迁移

检查新数据目录:

docker info | grep "Docker Root Dir"

若显示 /mnt/data/docker 则迁移成功。

6. 清理旧数据(可选)

确认迁移无误后删除原数据:

rm -rf /var/lib/docker


宝塔面板适配

  • 路径更新:若宝塔配置中引用了Docker原路径,需手动更新路径。
  • 容器状态:重启后检查容器是否正常运行:
docker ps -a



注意事项:

  • 磁盘挂载:确保数据盘已正确挂载(如 /mnt/data)
  • 权限问题:若遇到权限错误,尝试:
chmod -R 755 /mnt/data/docker

结束

本文标题: Linux系统下Docker数据迁移至数据(其他)盘

本文链接: https://blog.oyooy.com/archives/52.html

除非另有说明,本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

声明:转载请注明文章来源。

最后修改:2025 年 02 月 08 日
如果觉得我的文章对你有用,请随意赞赏