【Docker系列】迁移Docker到大磁盘

当Docker默认系统磁盘空间不足时,可以通过迁移至大容量磁盘来扩容。步骤包括查看磁盘使用情况,停止Docker服务,使用rsync迁移数据,编辑daemon.json配置新路径,重启Docker,并验证迁移成功后删除旧目录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【Docker系列】迁移Docker到大磁盘



前言

在使用Docker的时候,一般都安装在默认系统磁盘中,随着时间的使用磁盘空间会越来越小,这时候我们需要新增磁盘来扩容,下面记录一下如何把docker迁移到大磁盘空间中


一、操作步骤

这也没什么原理可以介绍,就是简单的迁移一下docker,直接上步骤。

  1. 查看服务器所有磁盘的使用情况
df -h

在这里插入图片描述

可以看到,红框处就是系统盘的大小
2. 查看 docker 镜像和容器存储目录的空间大小

du -sh /var/lib/docker/
  1. 停止 docker 服务
systemctl stop docker
  1. 将 docker 迁移到大容量的磁盘中,可以找个LVM的逻辑卷,以后可以直接动态扩展,LVM的创建过程可以参考我前面的文章:创建LVM的逻辑卷
    首先创建目录,我这里使用的是boot ,这个目录是存放docker文件的目录,可以自定义路径:
mkdir -p boot/docker/lib

安装rsync

yum -y install rsync

迁移

rsync -avz /var/lib/docker boot/docker/lib/

编辑 /etc/docker/daemon.json ,添加参数:

"graph":"/boot/docker/lib"

重启docker :

systemctl daemon-reload && systemctl restart docker

检查验证一下:

docker info

在这里插入图片描述
最后就确认一下镜像都在,删除原来的旧文件目录

docker images 
docker ps -a 
rm -rf /var/lib/docker

### 修改 Docker 镜像存储位置 为了将 Docker 的镜像存储位置从默认路径迁移到 D 盘,可以按照以下方法操作: #### 查看当前 Docker 存储路径 可以通过命令行工具查看当前 Docker 的根目录配置: ```bash docker info | grep "Docker Root Dir" ``` 此命令会返回当前 Docker 使用的根目录路径[^2]。 #### 停止 Docker 服务 在修改存储路径之前,需要先停止 Docker 服务。如果系统使用的是 `systemctl` 来管理服务,则运行以下命令: ```bash sudo systemctl stop docker ``` 如果是通过传统方式启动的服务,则执行以下命令: ```bash sudo service docker stop ``` #### 创建新存储路径并迁移数据 假设目标路径为 `D:\docker-data`(Windows 路径),则需要完成以下步骤: 1. **创建目标文件夹** 在 D 盘上新建一个名为 `docker-data` 的文件夹。 2. **复制现有数据至新路径** 将原路径下的所有数据拷贝到新的路径下。例如,在 Linux 或 WSL 中可使用如下命令实现: ```bash cp -r /var/lib/docker/* D:/docker-data/ ``` 3. **编辑 Docker 配置文件** 找到 Docker 守护进程的配置文件,默认情况下可能是 `/etc/docker/daemon.json` 文件。如果没有该文件,则需手动创建它,并添加以下内容: ```json { "data-root": "D:\\docker-data" } ``` 此处需要注意 JSON 格式的反斜杠转义规则[^3]。 #### 启动 Docker 并验证更改 重新启动 Docker 服务以应用更改: ```bash sudo systemctl start docker ``` 或者: ```bash sudo service docker start ``` 最后再次运行 `docker info | grep "Docker Root Dir"` 检查是否成功切换到了指定的新路径。 --- ### 注意事项 - 如果遇到权限问题,请确保拥有管理员权限来访问和写入目标磁盘上的相应目录。 - 数据迁移过程中要保持耐心,因为这可能涉及量文件传输时间较长。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值