如何删除镜像、容器和数据卷?几个值得收藏的docker命令(上)

简介: 在docker的实践过程中,如果没有注意docker对磁盘的占用,在某一天你可能发现磁盘空间已经被docker一点点吃掉了。那么今天给大家介绍几个清理docker镜像、容器和数据卷的常用命令。

前言


在docker的实践过程中,如果没有注意docker对磁盘的占用,在某一天你可能发现磁盘空间已经被docker一点点吃掉了。那么今天给大家介绍几个清理docker镜像、容器和数据卷的常用命令。


删除所有未使用或悬空镜像,容器,数据卷和网络


docker提供了一个命令,可以清理任何悬空资源(镜像、容器、数据卷和网络)。


docker system prune


如果想删除任何已经停止的容器和未使用的容器(不止悬空镜像),可以在命令中添加-a选项。


docker system prune -a


删除镜像


删除一个或多个指定镜像


首先组合使用docker images-a选项找到想要删除的镜像。该命令会列出所有的镜像,包括中间镜像层。当定位到想要删除的镜像后,指定镜像ID或tag,使用docker rmi进行删除。


1、找出镜像列表


docker images -a


2、删除


docker rmi Image Image


删除悬空镜像


docker镜像由多个镜像层组成。悬空镜像指的已经跟任何带tag镜像都没有关联,但仍旧占用磁盘空间的镜像层。我们使用docker images -f dangling=true 命令,可以查看所有悬空镜像。确认无误后,使用docker image prune删除所有的悬空镜像。


1、找出所有的悬空镜像


docker images -f dangling=true


2、删除镜像


docker image prune


使用模式匹配删除镜像


你还可以组合使用docker imagesgrep命令来查找匹配的镜像。如果查找结果与你预期的相符,那么可以通过awk将镜像的ID作为参数传给docker rmi命令。值得注意的是,这些命令不是docker所提供的,所以不保证在所有的系统上都能使用。


1、找到匹配的镜像


docker images -a |  grep "pattern"


2、删除


docker images -a | grep "some pattern" | awk '{print $3}' | xargs docker rmi


删除所有镜像


使用docker images -a 可以列出系统中存在的所有的镜像。如果确定要删除所有的镜像,可以使用-q选项将镜像的ID作为参数传给docker rmi命令。


1、列出所有镜像


docker images -a


2、删除


docker rmi $(docker images -a -q)


删除容器


删除一个或多个指定容器


首先使用docker ps -a输出所有的容器。然后我们可以在输出的容器列表中找到需要删除的容器的ID或容器名。


1、找出所有的容器


docker ps -a


2、删除


docker rm ID_or_Name ID_or_Name


相关文章
|
4月前
|
存储 Java Linux
【Docker】(2)还在浏览网页寻找Docker命令?本文全面列举与使用Docker里的各个命令!想要什么命令直接从本文拿!
docker有着比VM更少的抽象层 由于Docker不需要Hypervisor实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源 因此在CPU、内存利用率上Docker将会在效率上有明显优势 docker利用的时宿主机的内核,而不需要加载操作系统OS内核 当新建一个容器时,Docker不需要和虚拟机一样重新加载一个操作系统内核 进而避免引寻、加载操作系统内核返回等比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载OS,返回新建过程时分钟级别的。 而Docker由于直接利用宿主机的操作系统,则省略了返回过程,因此新建一个Docker容器只需
482 124
|
4月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
468 7
|
4月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
636 5
|
Linux Docker 容器
Docker操作 :容器命令
Docker操作 (四)
392 56
|
Linux 开发者 Docker
如何构建在 Docker 容器中运行命令?
【1月更文挑战第6天】
315 0
|
安全 Shell Linux
docker进入容器命令
docker进入容器命令
1054 1
|
应用服务中间件 Shell nginx
Docker容器操作基础命令
关于Docker容器操作基础命令的教程,涵盖了从启动、查看、删除容器到端口映射和容器信息获取的一系列常用命令及其使用方法。
449 14