在Linux环境上使用docker执行命令时遇到了 “no space left on device”可能是存储镜像的路径磁盘满了
1、先使用docker info查看docker的信息
docker info
可以看到docker的根路径是 /var/lib/docker
2、查看docker根路径的磁盘占用率
由上可知我们docker的磁盘占有率已经满了,需要清理
1 df -Th /var/lib/docker2 3 /dev/mapper/cl_centos7--18--21-root xfs 90G 90G 0G 100% /4 5 /dev/mapper/cl_centos7--18--21-root xfs 90G 90G 0G 100% /
3、清理无效数据文件
切换到docker根路径,查找占用空间大的文件,并根据情况清理文件
1 cd /var/lib/docker2 3 ll -h
4、
清理docker环境已经停止的容器
查看所有已经停止的容器
清理docker环境已经停止的容器查看所有已经停止的容器docker ps -a|grep Exited方法一:删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)docker rm $(dock 天津干部培训学校 https://www.ganxun.cn/searchschool/tj.html er ps -a -q)方法二:根据容器的状态,删除Exited状态的容器docker rm $(docker ps -qf status=exited)方法三:docker 1.13版本以后,可以使用 docker system 或 docker container命令清理容器。docker container prune 删除已停用容器docker container prunedocker system prune 删除关闭的容器、无用的数据卷和网络,以及dangling镜像docker system prune -a 命令清理得更加彻底,可以将没有容器使用Docker的镜像都删掉docker system prune方法四:根据容器的ID删除容器显示所有状态为Exited的容器,取出这些容器的IDdocker ps -a|grep Exited|awk '{print $1}'根据ID删除容器docker rm `docker ps -a|grep Exited|awk '{print $1}'`