我们在一台jenkins机器上/tmp目录磁盘空间不够了,而/tmp挂载到/目录。最后一查根目录。定位到是/var/lib/docker目录太大。于是有了迁移这个目录的需求。

du -sh /tmp/* | sort -h

干货

1.首先,备份fstab文件 sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
2.停止docker

service docker stop

3.使用rsync工具同步,

mkdir -p /data/docker && cd /data/docker 
yum -y install rsync
rsync -aXS /var/lib/docker/.  /data/docker/

-a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
-X, --xattrs                preserve extended attributes
 -S, --sparse                handle sparse files efficiently

4.修改fstab 在该文件中把下面一行添加到fstab里,将新位置挂载到 /var/lib/docker
新增的内容如下:

/data/docker            /var/lib/docker         none    bind            0 0

5.重新挂载 && 查看结果

mount –a 
df -h

6.重启docker

整合到一个root执行的脚本:

#!/bin/bash

cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)

service docker stop

export DOCKER_PATH=/data/docker/

rsync -aXS /var/lib/docker/. $DOCKER_PATH

echo $DOCKER_PATH            /var/lib/docker         none    bind            0 0 >> /et/fstab
mount -a
df -h

service docker start
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐