最近在工作中遇到了服务器无法进入docker容器的问题,提示no space left on device

问题现象

从提示上看,是没有磁盘空间了.于是乎想当然觉得可能是服务器上有些什么缓存之类的,重启服务器试试.
重启之后,在启动docker服务时报出新的错误提示:

loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)

执行指令"systemctl status"可以查看具体报错信息,推测还是磁盘空间不足导致docker启动失败.

问题排查

使用下面的指令查看磁盘空间,发现/dev/vda1占用100%,磁盘空间的确已经不足.

df -h

于是进入根目录下的各一级子目录,使用以下指令查看该目录资源占用情况.

du -sh *

发现/var/lib/docker/overlay占用空间很大.
注意: /var/lib/docker需要执行sudo su切换root账户才能查看其文件夹下的内容.

问题解决

使用以下指令查看docker所占磁盘大小.

docker system df

执行以下指令清理空间资源.

docker system prune

该指令默认会清除所有如下资源:
    已停止的容器(container)
    未被任何容器所使用的卷(volume)
    未被任何容器所关联的网络(network)
    所有悬空镜像(image)

 

Logo

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

更多推荐