本文内容参考:
【Docker基础】Docker镜像管理:docker rmi、prune详解-优快云博客
Docker Desktop清理内存 docker 清理容器_ganmaola的技术博客_51CTO博客
特此致谢!
1. docker rmi
简介
rmi实际上是remove image的缩写。docker rmi命令用于删除一个或多个Docker镜像。
基本语法
docker rmi [OPTIONS] IMAGE [IMAGE...]
常用选项
选项 | 说明 |
-f, --force | 强制删除镜像,即使有容器正在使用它 |
--no-prune | 不删除未被标记的父镜像 |
用法示例
- 删除单个镜像
docker rmi ubuntu:20.04
- 删除多个镜像
docker rmi ubuntu:20.04 nginx:latest
- 强制删除镜像
当镜像被容器使用时,需要添加-f参数强制删除。
docker rmi -f ubuntu:20.04
- 删除所有镜像
结合docker images -q可以删除所有镜像。
docker rmi $(docker images -q)
注意:此命令属于危险操作,会删除所有本地镜像,要谨慎使用!
2. docker prune
简介
prune的意思是修剪。docker prune是一组用于清理Docker资源的命令。
(1)docker image prune
docker image prune主要关注镜像相关的清理。
基本语法
docker image prune [OPTIONS]
常用选项
选项 | 说明 |
-a, --all | 删除所有未被容器使用的镜像(不只是悬空镜像) |
--filter | 提供过滤条件 |
-f, --force | 不提示确认 |
用法示例
- 删除悬空镜像
docker image prune
- 删除所有未被使用的镜像
docker image prune -a
- 使用过滤条件
docker image prune --filter "until=24h"
(2)docker system prune
docker system prune主要关注镜像相关的清理。docker system prune可以一次性清理多种Docker资源。
基本语法
docker system prune [OPTIONS]
常用选项
选项 | 说明 |
-a, --all | 删除所有未使用的镜像(不只是悬空镜像) |
--volumes | 同时删除未使用的卷 |
-f, --force | 不提示确认 |
(3)docker container prune
docker container prune作用是删除所有停止的容器。
如果容器启动时没有指定-rm选项,那么当容器停止时,是不能够自动清除的。即使容器已经停止掉了,也会占用空间。此时就需要docker container prune命令对于已停止的容器进行清理(删除)。
基本语法
docker container prune [OPTIONS]
常用选项
选项 | 说明 |
--filter | 提供过滤条件 |
-f, --force | 不提示确认 |
用法示例
- 强制清除停掉的容器
docker container prune -f
如果不加-f,则执行此命令时会出现以下提示信息:
- 清除所有停掉的容器,24小时之内创建的除外
docker container prune --filter "until=24h"
更多内容请看下回。