批量删除Dokcer容器/镜像

本文提供了一种方法来清理Docker环境中未运行的容器及未使用的镜像,通过两个命令实现:一是删除所有已退出状态的容器;二是强制删除所有未被使用的镜像。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker rm `docker ps -a | grep Exited | awk '{print $1}'`  #删除未运行的docker容器
docker rmi -f  `docker images | grep '<none>' | awk '{print $3}'` #删除未使用的docker镜像
### Docker 容器镜像的概念 Docker 镜像是用于创建容器的只读模板。每一个镜像由一系列分层堆叠而成,每一层代表了文件系统的变更。这种设计使得镜像可以被高效地存储和传输[^1]。 ```bash # 创建一个新的镜像可以通过构建一个 Dockerfile 来实现 docker build -t myimage . ``` 相比之下,Docker 容器是从镜像实例化而来的运行实体。当启动一个基于特定镜像的新容器时,会在该镜像之上添加一层可写的容器层,在此之上的任何修改都只会保存在这层中而不影响原始镜像。 ```bash # 使用指定名称从镜像启动新容器 docker run --name=mycontainer -d myimage ``` ### 如何区分两者 简单来说: - **镜像** 是静态的应用程序及其依赖项打包后的产物; - **容器** 则是在宿主机上实际执行并提供服务的过程实例; 因此每次通过相同的镜像来启动不同的容器都会得到独立的工作环境副本,彼此之间互不影响。 ### 删除操作指南 对于不再使用的资源应当及时清理以释放空间。要移除某个具体版本的镜像需先停止关联的所有活动中的容器再做处理。 ```bash # 停止正在运行的容器 docker stop container_name_or_id # 移除已停止的一个或多个容器 docker rm container_name_or_id # 强制删除未处于使用状态下的某标签对应的全部镜像记录 docker rmi image_tag_or_id ``` 为了更优雅地完成上述任务还可以借助一些辅助工具或者脚本来批量处置过期对象,提高运维效率的同时也降低了误操作的风险。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值