如何进行 Docker 数据目录迁移

如何进行 Docker 数据目录迁移

Docker 默认的数据存储目录通常位于 /var/lib/docker,但随着容器和镜像的增多,该目录可能占用大量磁盘空间。为了优化存储或更换磁盘,需要迁移 Docker 数据目录。以下是具体方法:

停止 Docker 服务

确保所有容器和 Docker 服务已停止,避免数据损坏。执行以下命令:

bash 复制代码
sudo systemctl stop docker
确认当前数据目录

检查当前 Docker 的数据目录路径:

bash 复制代码
sudo docker info | grep "Docker Root Dir"
创建新目录并复制数据

选择新的存储路径(如 /new/path/docker),并复制原有数据:

bash 复制代码
sudo mkdir -p /new/path/docker
sudo rsync -avz /var/lib/docker/ /new/path/docker/
修改 Docker 配置

编辑 Docker 的配置文件(通常是 /etc/docker/daemon.json),添加以下内容:

json 复制代码
{
  "data-root": "/new/path/docker"
}

如果文件不存在,直接创建即可。

重启 Docker 服务

加载新配置并重启 Docker:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl start docker
验证迁移结果

检查 Docker 是否使用了新的数据目录:

bash 复制代码
sudo docker info | grep "Docker Root Dir"

同时运行容器测试功能是否正常。

清理旧数据(可选)

确认迁移成功后,可以删除旧数据目录释放空间:

bash 复制代码
sudo rm -rf /var/lib/docker

注意事项

  • 迁移过程中确保磁盘空间充足。
  • 如果使用 aufs 存储驱动,需额外处理图层文件。
  • 在集群环境中,需同步所有节点的配置。
相关推荐
不吃香菜kkk、17 分钟前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
Zhu75842 分钟前
docker环境,vLLM 部署 Qwen3.8-27B
docker·qwen·vllm
溜达的大象1 小时前
多台服务器不想上重型监控?用 Beszel 搭一套轻量主机与 Docker 看板
docker
正经教主1 小时前
【FDE系列】阶段2:Day 47:对接企业系统 — 飞书 / 钉钉 API
人工智能·docker·fde
九皇叔叔13 小时前
Kubernetes 资源管理方式详解:命令式与声明式管理
docker·容器·k8s
程序猿小郑18 小时前
Docker Compose 构建完整服务实战指南:从入门到最佳实践
docker·容器
行百里er1 天前
5 分钟跑起 Redis(Docker 版)
redis·后端·docker
Mr.朱鹏1 天前
Docker三剑客实战指南:Docker、Dockerfile 和 Docker Compose
python·docker·devops·dockerfile
鬼先生_sir1 天前
Docker 完整教程
docker
java_logo1 天前
Docker 一键部署 Jellyfin:快速搭建私有化媒体服务器
docker·私有化部署·jellyfin·硬件加速·媒体服务器·轩辕镜像·影音库