docker overlay 占用空间太大,迁移到 /data/

将 Docker 的 overlay 存储驱动迁移到 /data/ 目录下,可以通过以下步骤完成:

1. 停止 Docker 服务

首先,停止 Docker 服务以确保没有容器在运行,并且数据不会被写入到当前的存储位置。

bash 复制代码
sudo systemctl stop docker

2. 备份现有数据

在进行任何迁移操作之前,建议备份现有的 Docker 数据,以防止数据丢失。

bash 复制代码
sudo tar -czvf docker_backup.tar.gz /var/lib/docker

3. 创建新的存储目录

/data/ 目录下创建一个新的目录来存放 Docker 数据。

bash 复制代码
sudo mkdir -p /data/docker

4. 移动现有数据到新目录

/var/lib/docker 目录下的所有内容移动到 /data/docker

bash 复制代码
sudo mv /var/lib/docker/* /data/docker/

5. 更新 Docker 配置

编辑 Docker 的配置文件 /etc/docker/daemon.json,添加或修改 data-root 配置项,指向新的存储目录。

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

如果没有 /etc/docker/daemon.json 文件,可以创建一个新的。

6. 启动 Docker 服务

重新启动 Docker 服务,使其加载新的配置。

bash 复制代码
sudo systemctl start docker

7. 验证迁移

检查 Docker 服务是否正常运行,并且容器和镜像是否正常加载。

bash 复制代码
sudo docker info

在输出中,确认 Docker Root Dir 是否已经更改为 /data/docker

8. 清理旧数据(可选)

如果确认迁移成功,并且所有数据都已正确加载,可以删除旧的 /var/lib/docker 目录。

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

9. 监控磁盘空间

迁移完成后,监控 /data/ 目录的磁盘空间使用情况,确保没有异常增长。

bash 复制代码
df -h /data/

通过以上步骤,你应该能够成功将 Docker 的 overlay 存储驱动迁移到 /data/ 目录下。

相关推荐
朝阳58112 分钟前
MySQL 主从复制 — Docker 双机灾备方案
数据库·mysql·docker
ai产品老杨35 分钟前
【架构实战】如何基于 Docker 与边缘计算构建企业级 AI 视频管理平台?打通 GB28181/RTSP 统一接入与异构算力调度,全量源码交付破解集成痛点
人工智能·docker·架构
IT策士44 分钟前
Docker 从 0 到 1 再到 Kubernetes 实战:第18篇 从 Docker Compose 到 Kubernetes 的思考
docker·容器·kubernetes
linmengmeng_13141 小时前
【总结】Docker 容器重建后 Nginx 502 问题排查与解决
nginx·docker·容器
Plastic garden1 小时前
Docker(3)Docker 镜像 & Dockerfile
运维·docker·容器
“码”力全开1 小时前
解耦异构算力与多协议接入:基于Docker与源码交付的开源GB28181/RTSP边缘计算AI视频管理平台架构深度解析
人工智能·docker·开源
m0_740859621 小时前
Docker安装常见数据库命令汇总(2026)
数据库·docker·容器
taiguisheng1 小时前
Docker中编译esp32
windows·docker·esp32
IT策士1 小时前
第16篇 实战:用 Docker Compose 编排 WordPress 与 MySQL
mysql·docker·容器
“码”力全开1 小时前
解耦流媒体与AI推理:基于Docker与GB28181/RTSP的边缘计算中台,全量源码交付如何帮集成商节省95%开发成本?
人工智能·docker·边缘计算