【docker】 /var/lib/docker/overlay2/ 占用磁盘问题

df -h

查看到下面的路径,占用快满了

而如果把 /var/lib/docker/overlay2/ ,里面的内容删除的话,docker pull要报错 

failed to register layer: symlink ../9f01f71de427212082349a7c0e59f1daaa2091c591323f2ae24d52a28364a1fe/diff /var/lib/docker/overlay2/l/XIHDHF3LIUI2SOI2DELEONWQCJ: no such file or directory

找到以下解决方法,待验证

先以下命令进行查看

sudo du -hs /var/lib/docker/
docker system df
docker system prune
docker system prune -a

再迁移 /var/lib/docker 目录

systemctl stop docker
mkdir -p /home/docker/lib
rsync -avz /var/lib/docker /home/docker/lib/
sudo mkdir -p /etc/systemd/system/docker.service.d/
sudo vi /etc/systemd/system/docker.service.d/devicemapper.conf
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd  --graph=/home/docker/lib/docker
systemctl daemon-reload
 
systemctl restart docker
 
systemctl enable docker
# docker info

显示  

Docker Root Dir: /home/docker/lib/docker

确定容器没问题后删除/var/lib/docker/目录中的文件。


版权声明:本文为intelrain原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。