删除悬空镜像
docker镜像由多个镜像层组成。悬空镜像指的已经跟任何带tag镜像都没有关联,但仍旧占用磁盘空间的镜像层。我们使用docker images -f dangling=true 命令,可以查看所有悬空镜像。确认无误后,使用docker image prune删除所有的悬空镜像。
- 找出所有的悬空镜像
docker images -f dangling=true #等同于下面命令
docker images|awk '$2=="\<none\>" '
- 删除悬空镜像
docker image prune #等同于下面命令
docker rmi `docker images|awk '$2=="\<none\>" {print $3}'`
- 清理所有容器
docker rm -f `docker ps -a -q`
- 清理所有镜像
docker rmi -f `docker images -q`
- 清理容器及其数据卷
docker rm -v [容器ID/名称]
对于在dockerfile中定义了VOLUME 的路径,尽管未手动挂载指定路径,也会在/var/lib/docker/volumes/xxxxx/_data 下默认挂载保留容器中的数据目录.删除容器时会被保留在主机上,久而久之占用大量储存空间,在删除容器时确认不用保留数据时,可以加上-v清理挂载数据