docker中/var/lib/docker目录迁移

今天突然发现服务器的磁盘空间不足,查了一下发现是/var/lib/docker/overlay2目录占用空间太大。这个是docker的默认路径,由于磁盘分区问题,导致/var目录空间有限,所以,可以将/var/lib/docker目录迁移到空间最大的盘中。

  1. 停止docker服务
systemctl stop docker
  1. 查看磁盘空间
    通过命令df -lh 先去看下磁盘大概的情况,找一个大的空间。

  1. 创建docker的新目录

创建docker的新目录,我这边找了/home, 所以我这边的新目录地址是 /home/docker

mkdir -p /home/docker
  1. 开始迁移

使用rsync命令,将/var/lib/docker/迁移到/home/docker/目录中

rsync -avzP /var/lib/docker/ /home/docker/

若未安装rsync使用yum install -y rsync安装

参数解释:

  • -a,归档模式,表示递归传输并保持文件属性。
  • -v,显示rsync过程中详细信息。可以使用”-vvvv”获取更详细信息。
  • -P,显示文件传输的进度信息。(实际上”-P”=”–partial –progress”,其中的”–progress”才是显示进度信息的)。
  • -z, 传输时进行压缩提高效率。
  1. 修改docker目录

修改vim /lib/systemd/system/docker.service文件,在ExecStart加入中加入--graph=/data/docker/lib/docker

  1. 重启docker
systemctl daemon-reload
systemctl restart docker
systemctl enable docker
  1. 启动之后确认docker 没有问题,删除旧的/var/lib/docker/目录

本文参考:https://my.oschina.net/qbj/blog/2998164

0%