docker容器将系统盘空间占满的解决办法
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
最近遇到一个问题线上服务器的系统盘空间被占满了导致服务不能正常运行了。
docker启动时会报出下面这个错误
no space left on device
排查用到的命令显示当前路径下占用空间超过1G的文件或文件夹
du -h --max-depth=1|grep G|sort -n
经过一番排查是因为docker文件将硬盘空间给占满了50G系统盘占用了43G。
最终排查到的路径是/var/lib/docker/
经过了一番查询发现我们可以将/var/lib/docker/这个路径下的文件转移到其他磁盘下这样的话系统盘就会空出来了。
1、停掉服务
systemctl stop docker
2、创建docker目录我的数据盘是在挂在到了/home下 可以根据实际情况调整
mkdir -p /home/docker
3、迁移目录由于我的数据量比较大 这一步需要比较长的时间 我整整 用了半个小时
rsync -avz /var/lib/docker /home/docker/
4、修改docker配置文件中的路径
vim /etc/docker/daemon.json
在文件中增加
"graph": "/home/docker"
5、重启docker服务
systemctl daemon-reload
systemctl restart docker
systemctl enable docker
在这一步的时候可能会报错需要执行一下
dockerd &
6、查看docker信息
docker info
关键步骤就这几步。