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/ 目录下。

相关推荐
蝎子莱莱爱打怪8 小时前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
小p1 天前
docker学习7:docker 容器的通信方式
docker
小p1 天前
docker学习5:提升Dockerfile水平的5个技巧
docker
小p1 天前
docker学习3:docker是怎么实现的?
docker
小p3 天前
docker学习: 2. 构建镜像Dockerfile
docker
小p3 天前
docker学习: 1. docker基本使用
docker
崔小汤呀4 天前
Docker部署Nacos
docker·容器
缓解AI焦虑4 天前
Docker + K8s 部署大模型推理服务:资源划分与多实例调度
docker·容器
1candobetter4 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
シ風箏4 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker