运行 docker 提示 no space left on device
这个错误提示表示在运行 Docker 时,设备上没有足够的空间。你可以尝试以下方法来解决这个问题:
-
清理磁盘空间:删除不需要的文件和应用程序,以释放空间。
-
增加磁盘空间:如果你的磁盘空间不足,可以考虑升级硬盘或添加新的硬盘。
-
检查 Docker 镜像大小:确保你的 Docker 镜像没有过大,导致无法安装到设备上。如果需要,可以尝试使用较小的镜像。
-
关闭不必要的 Docker 容器:有些容器可能会占用大量的磁盘空间,你可以使用
docker ps -a
命令查看所有正在运行的容器,然后使用docker stop <container_id>
命令停止不需要的容器。
1、先使用 docker info 查看 docker 的信息
docker info
可以看到 docker 的根路径是 /var/lib/docker

2、查看 docker 根路径的磁盘占用率
由上可知我们 docker 的磁盘占有率已经满了,需要清理
df -Th /var/lib/docker
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/centos-root xfs 35G 35G 796M 98% /
3、清理无效数据文件
切换到 docker 根路径,查找占用空间大的文件,并根据情况清理文件
cd /var/lib/docker
ll -h
4、清理 docker 环境已经停止的容器
查看所有已经停止的容器
docker ps -a|grep Exited
删除所有停止的容器
docker rm $(docker ps -qf status=exited)
5、错误镜像移除
docker 使用一段时间之后,可能堆积很多用不着的,或者编译错误的镜像,一个一个删除就很麻烦,需要一个批量删除的方法,如下:
docker rmi $(docker images | grep "none" | awk '{print $3}')
上面这条命令,可以删除所有名字中带 “none” 关键字的镜像,即可以把所有编译错误的镜像删除。
这个 grep 后面的参数,就是筛选出名字中包含这个参数的镜像。
即可以通过这条命令,删除所有名字中包含此参数的镜像。
原文始发于微信公众号(有追求的开发者):运行docker提示no space left on device
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/257021.html