清理
简介
Docker 在使用过程中,会有一些无用的镜像,容器,数据源,网络资源,Docker 提供了一些命令来清理资源
清理镜像
- 删除所有未被任何容器关联的镜像(通常称为“悬空”镜像)
bash
docker image prune
- 删除所有本地镜像(谨慎使用,因为这将删除所有本地镜像,包括那些正在运行中的容器所依赖的镜像)
bash
docker image rm $(docker images -q)
- 删除所有未被任何容器关联的镜像
bash
docker rmi $(docker images -f "dangling=true" -q)
清理容器
- 停止并删除所有容器
bash
# 这个命令会先停止所有运行中的容器,然后删除所有已停止的容器。
docker container stop $(docker container ls -aq) && docker container rm $(docker container ls -aq)
- 只删除所有已停止的容器
bash
docker container rm $(docker container ls -a -q)
清理数据卷
- 删除所有未使用的本地卷
bash
docker volume prune
- 删除所有的卷
bash
docker volume rm $(docker volume ls -q)
清理网络
- 删除所有未使用的网络
bash
docker network prune
- 删除所有的网络
bash
docker network rm $(docker network ls -q)
一键清理所有无用资源
- 清理所有未被容器关联的资源(包括镜像、容器、网络、卷):
bash
docker system prune -a
- 可以使用
-f
或者--force
选项来避免确认提示,直接执行清理操作:
bash
docker system prune -af