docker system prune 命令详解

这篇具有很好参考价值的文章主要介绍了docker system prune 命令详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

该命令用于删除 Docker 系统中未使用的数据

1.介绍

官网描述:删除所有未使用的容器、网络、映像(包括悬挂的和未引用的),以及卷(可选)。
名词解释:

  • 未使用的容器:所有已停止的容器将被删除。
  • 未使用的镜像:只有悬挂的镜像(未被任何容器引用)将被删除,除非使用了 -a 或 --all 参数。
  • 未使用的网络:所有未被容器使用的自定义网络将被删除。
  • 未使用的卷(如果使用 --volumes 或 -v 选项):所有未被容器引用的卷将被删除。

相关参数:

  • -a, --all:删除未被任何容器引用的所有镜像,而不仅仅是悬挂的镜像。
  • –filter:根据提供的条件过滤要删除的内容。
  • –force, -f:跳过确认步骤,直接执行删除,不加的话在执行步骤时需要手动确认,建议不用。手动容错率高一点
  • –volumes, -v:删除所有未被至少一个容器引用的卷。

2.使用示例

简单示例:

  • 删除所有未使用的容器、镜像、网络:docker system prune
  • 删除所有未使用的容器、镜像(包括未被引用的)、网络:docker system prune -a
  • 删除所有未使用的容器、镜像、网络、卷:docker system prune --volumes

Filtering (–filter)

until 过滤器

此过滤器允许删除在给定时间戳之前创建的容器、镜像和网络。
支持Unix时间戳、日期格式的时间戳或Go持续时间字符串(例如10m、1h30m),这些字符串是相对于守护进程机器的时间计算的。

docker system prune --filter "until=1h"

label 过滤器

label 过滤器允许根据容器、镜像、网络和卷的标签进行筛选。有两种格式:label=label== 只会删除具有指定标签的对象,而 label!= 或** label!==** 会删除不具有指定标签的对象。
假设有一个 “nginx” 容器,版本标签为 “1.21.0”。可以按以下方式使用标签过滤器:
第一种:删除所有带有 “version=1.21.0” 标签的未使用的容器、镜像和网络

docker system prune --filter "label=version=1.21.0"

第二种:删除所有不带有 “app=nginx” 标签的未使用的容器、镜像和网络

docker system prune --filter "label!=app=nginx"

也可以与-a和-v一起使用

docker system prune -a -v --filter "label!=app=nginx"

其中label可以使用docker inspect <容器id或名称> 来查看labels
下面是一个容器的Labels部分

{
  
  "Labels": {
                "com.docker.compose.config-hash": "b637c41bf29efe8fcd1d3c7baa3ad5ba8dc44f21cec0d3937d665fb79df76644",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "jpom",
                "com.docker.compose.project.config_files": "docker-compose.yml",
                "com.docker.compose.project.working_dir": "/www/docker-compose/jpom",
                "com.docker.compose.service": "jpom",
                "com.docker.compose.version": "1.29.2"
  }
}

以下是示例:
1.删除特定项目的所有容器、图像和网络:

docker system prune --filter "label=com.docker.compose.project=jpom"

2.删除特定服务的所有容器、图像和网络:

docker system prune --filter "label=com.docker.compose.service=jpom"

3.删除使用特定版本的Docker Compose创建的所有容器、图像和网络:

docker system prune --filter "label=com.docker.compose.version=1.29.2"

虽然这个命令可以释放资源,但在执行时需要仔细确认,以免误删数据,必要情况下需要备份重要的数据。


你的内心将世界解读成什么样子,你最终就会活成什么样子文章来源地址https://www.toymoban.com/news/detail-761465.html

到了这里,关于docker system prune 命令详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 36-Docker-常用命令详解-docker inspect

    前言 本篇来学习docker inspect命令 docker inspect 作用:获取容器/镜像的元数据。 options说明 option 说明 -f 指定返回值的模板文件 -s 如果类型为容器,则显示文件总大小 –type 返回指定类型的JSON 使用示例 获取容器ip 获取容器mac地址 获取容器日志路径 获取容器镜像名 获取容器目

    2024年02月13日
    浏览(40)
  • 20-Docker-常用命令详解-docker attach

    前言 本篇来学习docker attach命令 docker attach 作用:进入容器正在执行的终端 语法格式 options 说明 option 说明 –detach-keys 指定退出attach模式的快捷键序列,默认是 CTRL-p –no-stdin 是否挂你标准输入,默认是打开 –sig-proxy 是否代理收到的系统信号给应用进程,默认为true 使用示例

    2024年02月09日
    浏览(99)
  • 27-Docker-常用命令详解-docker tag

    前言 本篇来学习docker tag 命令 docker tag 作用:标记本地镜像,将其归入某一仓库。 语法格式 使用示例 打了新的 TAG 虽然会多了一条记录,但是从 IMAGE ID 可以得知他们是同一个镜像

    2024年02月17日
    浏览(38)
  • docker run 命令详解

    一、前言 Docker容器是一个开源的应用容器引擎,让开发者可以以统一的方式打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上(包括流行的Linux机器、Windows机器),也可以实现虚拟化。以下是Docker容器的特点: 沙箱机制:容器是

    2024年02月02日
    浏览(46)
  • docker 的常用命令详解

    Docker 是一个开源的应用容器引擎,它允许开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。下面是 Docker 的常用命令详解。 1. 镜像操作 docker images :列出

    2024年02月20日
    浏览(40)
  • Docker Compose 命令详解

    一、docker-compose命令对象与格式 二、命令选项 三、命令使用说明 build 构建(重新构建)项目中的服务容器 config 检测compose文件的错误 up 启动服务 down 停止容器 images 列出项目中所包含的镜像 logs 查看服务容器的日志 kill 发送 SIGKILL 信号来强制停止服务容器 port 查看某个容器

    2024年02月12日
    浏览(32)
  • Docker build 命令详解

    build 命令用于使用 Dockerfile 创建镜像。 语法: OPTIONS 说明 --build-arg=[] : 设置镜像创建时的变量 --cpu-shares : 设置 cpu 使用权重 --cpu-period : 限制 CPU 、 CFS 周期 --cpu-quota : 限制 CPU 、 CFS 配额 --cpuset-cpus : 指定使用的 CPU id --cpuset-mems : 指定使用的 内存 id --disable-content-trust : 忽略校验

    2024年02月07日
    浏览(39)
  • Docker命令详解

    启动docker : systemctl start docker 停止docker : systemctl stop docker 重启docker : systemctl restart docker 查看docker状态 : systemctl status docker 开机启动 : systemctl enable docker 查看docker概要信息 : docker info 查看docker总体帮助文档 : docker --help 查看docker命令帮助文档 : docker 具体命令 --help 1

    2024年02月16日
    浏览(30)
  • 详解Docker ps命令

    docker ps 命令是 Docker 中用于列出正在运行的容器的命令。它用于查看当前在 Docker 守护进程中正在运行的容器的状态信息。以下是 docker ps 命令的主要用法和一些常用选项: 这将列出当前正在运行的容器的基本信息,包括容器的ID、名称、运行状态、对应的镜像、创建时间等。

    2024年04月23日
    浏览(26)
  • 【docker系列】详解docker容器状态转换管理命令

    本文系docker系列专栏第六篇。docker容器有三种状态运行、停止、暂停,镜像可以创建、运行容器,镜像和容器也可以转换成tar压缩包进行存储。本文为大家介绍容器的状态转换命令及镜像创建运行容器、tar包导入导出相关的命令及使用场景。 结合下文中的命令介绍来理解上面

    2023年04月25日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包