Docker Image (镜像) 常见命令

news2025/9/21 1:38:10

Docker Image (镜像) 常用命令

docker images

  • 功能:列出本地所有的镜像。如果镜像 ID 相同,但是 Tag 标签不同,也会被当作不同的条目被列出来。

  • 语法:

    docker images [options] [REPOSITORY[:TAG]] 
    
  • 别名:

    docker image ls    # 这个命令属于是镜像的命令,所以说会有一个 image 的标识哈
    docker image list  # 之后我们学习到的容器的命令,就会有一个 container 的标识!
    
  • 参数:

    • -a:列出本地的所有镜像,他只会显示顶级的镜像层,会过滤掉中间的镜像层。Docker 镜像是分层的,中间镜像层的存在可以 提高重用性,减少磁盘用量,加速 docker 镜像的构建 ,默认这些中间层是不显示的,后续我们会讲到显示这些中间层镜像的命令。
    • –digests:显示镜像的摘要信息。
    • -f–fliter:显示满足条件的所有镜像。
    • –format:指定返回值的模板文件。
    • –no-trunc:显示完整的镜像信息,不截断输出。
    • -q:只显示镜像的 ID。
  • 演示:

    如下图:我们使用 docker images -a 命令列出了本地的所有镜像,我们能看到镜像的名字,镜像的 Tag,镜像的 IMAGE ID,镜像创建的时间,以及镜像的大小哈!

    img


    如下图:我们使用 docker images --digests 就能看到我们在拉取镜像时,可能会用到的 DIGESTS 值。

    img


    如下图:我们使用 docker images --format json 就可以将输出的结果格式化成 json 的格式。具体格式化出来的格式支持自定义,大家可以去官网学习!

    img


如下图:我们使用 docker images -q 命令,就只能看到镜像的 ID,不能毫无用处,只能说一点用没有。奥,不对,在删除镜像的时候可能会用到。

img

docker tag

  • 功能:创建引用 SOURCE_IMAGE 的标签 TARGET_IMAGE,就相当于取别名,在使用 docker pull 命令的时候就需要使用 docker tag 给镜像取别名,然后 pull 到指定的仓库。

  • 语法:

    docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
    
  • 别名:

    docker image tag
    
  • 演示:

    如下图:我们使用 docker tag centos:centos7centos:centos7 这个镜像取别名,然后就会在本地创建引用 SOURCE_IMAGE 的镜像,因为他们的 IMAGE ID 都是一样的。

    当然我们使用 docker tag IMAGE_ID 也可以,docker tag eeb6ee3f44bd centos:v5

    img

docker image inspect

  • 功能:列出一个或者多个镜像的详细信息。

  • 语法:

    docker image inspect [OPTIONS] IMAGE [IMAGE ...] 
    
  • 参数:

    • -f–format :以指定格式输出。
  • 演示:

    如下图:我们使用 docker iamge inspect 查看一个镜像的详细信息,我们能看到 Tag,DIGESTS,创建时间等,可以看到有一个 Layers,它显示镜像的所有层,构成了整个镜像的文件系统,是镜像中实际存在的层。可以对比等会讲的 docker history 命令。

    img

docker history

  • 功能:显示镜像的历史。

  • 语法:

    docker history [OPTIONS] IMAGE
    
  • 别名

    docker image history
    
  • 参数:

    • -H–human :以人易读的方式显示大小和日期。默认应该是带了这个选项的。
    • –no-trunc :显示全部信息,不截断。
    • -q–quiet :只显示镜像 ID。
  • 演示:

    如下图:我们使用 docker history nginx:1.25.4 查看 nginx 这个镜像的历史。我们看到结果也显示出来了分层信息。这里的分层是什么呢?它显示的是镜像的构建历史,它记录了构建镜像时执行的每个步骤和创建的层。这些步骤通常对应于 Dockerfile 中的指令,例如 RUNCOPYADD 等。history 命令主要关注于这些构建步骤,而不是镜像中的每一个物理层。此外,Dockerfile 中的某些指令可能会创建多个内部层,但这些内部层在最终镜像中可能被合并为一个层,这会导致 docker image historydocker image inspect 看到的层数不同。

    img

docker pull

参考镜像仓库的命令。

docker push

参考镜像仓库的命令。

docker rmi

  • 功能:删除一个或者多个镜像。

  • 语法:

    docker rmi [OPTIONS] IMAGE [IMAGE ...]
    
  • 别名:

    docker image rm
    docker image remove
    
  • 参数:

    • -f :强制删除镜像。正在运行的容器镜像是无法删除的,除非使用 -f 选项。
  • 演示:

    如下图:在我的本地镜像中,有多个 IMAGE ID 为 eeb6ee3f44bd 的镜像标签,当 docker rmi 的不是最后的那个标签,只会进行 Untagged 的操作,只有当删除的是最后一个标签才会把这个镜像从本地删除。

    img


如果我们使用 docker rmi IMAGE ID 删除镜像的时候,如果这个镜像被多个 Tag 关联,是不能直接删除这个镜像的!除非加上 -f 选项,这会将所有 Tag 解除关联,并删除镜像!

img


如下图:我们无法删除正在运行的容器镜像。但是可以加上 -f 选项,删除已经停止的容器镜像。

img

docker save

  • 功能:将一个或者多个镜像保存成为 tar 归档文件。

  • 语法:

    docker save [OPTIONS] IMAGE [IMAGE ...]
    
  • 别名

    docker image save
    
  • 参数:

    • -o–output:输出到的目标文件。
  • 演示:

    如下图:我们将 nginx 这个镜像 保存成为 tar 文件。我们将来就可以使用 docker load 命令将这个文件导出为镜像。这两个命令常用于由于环境限制无法在镜像网站拉取镜像的时候。

    img

docker load

  • 功能:从 tar 归档文件中加载镜像。也可以从标准输入 STDIN 中加载!

  • 语法:

    docker load [OPTIONS]
    
  • 别名:

    docker image load
    
  • 参数:

    • –input-i :指定导入的文件,加上该选项就会替代 STDIN。
    • –quiet-q:精简输出信息。
  • 演示:

    如下图:原来本地是没有 nginx 这个镜像的,通过 docker load 从刚才 docker save 形成的 tar 文件中加载镜像!

    img


从标准输入加载镜像可以这么写:

docker load < test_docker_save.tar.gz

docker image prune

  • 功能:删除没有使用过的镜像。

  • 语法:

    docker image prune [OPTINONS]
    
  • 参数:

    • -a-all :删除全部不使用的镜像。
    • –filter :指定过滤条件。
    • -f–force :不提示是否删除。
  • 演示:

    如下图:我的本地有两个镜像:nginx 和 busybox,其中 busybox 镜像被一个容器引用!然后我们通过 docker image prune -a 删除所有未被使用的镜像!因为我们没有加上 -f 选项,就会让我们确认是否删除,输入 y 之后成功将未被使用的 nginx 镜像删除啦!

    img

docker import

这个命令暂时没法讲,我们在讲解 docker 容器命令的时候需要和 docker export 命令一起讲。

docker build

这个命令也没法讲,我们在讲镜像制作的时候讲解!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1592825.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Pandas实现股票交易数据可视化

一、折线图&#xff1a;展现股价走势 1.1、简单版-股价走势图 # 简洁版import pandas as pdimport matplotlib.pyplot as plt# 读取CSV文件df pd.read_csv(../数据集/格力电器.csv)data df[[high, close]].plot()plt.show() 首先通过df[[high,close]]从df中获取最高价和收盘…

本地PC安装eNSP Pro完成简单的WLAN实验

前言 上个月底华为更新一版eNSP Pro&#xff0c;新增了AC、AP、STA等设备&#xff0c;也就是说可以在eNSP中进行WLAN相关的实验了。之前写过一篇文章《将eNSP Pro部署在华为云是什么体验》介绍了怎么在华为云上部署eNSP Pro&#xff0c;这次使用本地PC机在虚拟机中安装eNSP Pr…

配置交换机端口安全

1、实验目的 通过本实验可以掌握&#xff1a; 交换机管理地址配置及接口配置。查看交换机的MAC地址表。配置静态端口安全、动态端口安全和粘滞端口安全的方法。 2、实验拓扑 配置交换机端口安全的实验拓扑如图所示。 配置交换机端口安全的实验拓扑 3、实验步骤 &#xff…

excel中能不能用substitute函数把文本中某个字符起始的数据全部替换?

希望将A2单元格中&#xff0c;以光交开始的字符全部替换&#xff0c;本以为可以用公式SUBSTITUTE(A2,"光交","")&#xff0c;好像*不起作用。 很可惜的是&#xff0c;不仅SUBSTITUTE函数不支持通配符&#xff0c;像LEFT、RIGHT、MID、REPLACE函数都不支持通…

2024年大唐杯官网模拟题

单选(出题角度很奇怪&#xff0c;不用太纠结&#xff09; 5G NR系统中&#xff0c;基于SSB的NR同频测量在measconfig里最多可以配置&#xff08; &#xff09;个SMTC窗口。 A、3 B、4 C、1 D、2 答案&#xff1a;D 2个 5G 中从BBU到AAU需要保证&#xff08; &#xff09;Gbps…

DHCP服务器的高可靠、高可用+负载均衡配置

一、适用场景 1、DHCP地址池集中化的管理环境中&#xff08;本例建立了200个C类网24位的地址池&#xff09;&#xff1b; 2、全网仅1台合法的DHCP服务器&#xff08;要是它宕机全部断网&#xff0c;本例旨在提高服务器的可靠性、可用性&#xff0c;双DHCP服务器性能上负载均衡…

FastAPI - uvicorn设置 logger 日志格式

怎么将日志打印到文件 在main.py加入log_config“./uvicorn_config.json” import uvicornif __name__ "__main__":uvicorn.run("app:app", host"0.0.0.0", port8000, log_config"./uvicorn_config.json")uvicorn_config.json {&qu…

zookeeper和kafka消息队列

zookeeper zookeeper介绍 Zookeeper是一个开源的分布式的&#xff0c;为分布式框架提供协调服务的Apache项目 zookeeper特点 zookeeper是由一个领导者(leader)&#xff0c;多个跟随者(follower)组成的集群 Zookeepe集群中只要有半数以上节点存活&#xff0c;Zookeeper集群…

数字乡村探索:引领农村未来发展新方向——科技创新赋能乡村现代化与农民生活品质提升之旅

目录 一、数字乡村的内涵与特点 二、数字乡村的探索进展 三、数字乡村面临的挑战与机遇 四、数字乡村的未来发展方向与路径 五、数字乡村助力农村产业升级 六、数字乡村促进城乡融合发展 七、数字乡村激发农民创新创业活力 八、数字乡村提升农民获得感和幸福感 九、展…

遥感卫星:探索地球的科技之旅

遥感卫星是人类探索地球、理解地球、保护地球的重要工具&#xff0c;其发展历程承载了人类对地球的探索与认知的历程。从最初的概念到如今的高科技应用&#xff0c;遥感卫星技术的发展见证了人类科技的不断进步与创新。 初心萌芽&#xff1a; 遥感卫星的发展始于20世纪中叶&…

Eureka-搭建Eureka步骤

简介&#xff1a; Eureka是Netflix开发的服务发现框架&#xff0c;本身是一个基于REST的服务&#xff0c;主要用于定位运行在AWS域中的中间层服务&#xff0c;以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中&#xff0c;以实…

N-149基于微信小程序网上商城系统

开发工具&#xff1a;IDEA、微信小程序 服务器&#xff1a;Tomcat9.0&#xff0c; jdk1.8 项目构建&#xff1a;maven 数据库&#xff1a;mysql5.7 前端技术&#xff1a;vue、uniapp 服务端技术&#xff1a;springbootmybatisredis 本系统分微信小程序和管理后台两部分&a…

【系统分析师】操作系统部分

文章目录 1、进程状态2、前趋图3、PV操作4、死锁问题5、存储管理5.1 页式存储5.2 段式存储5.3 段页式存储5.4 页面置换算法 6、文件管理6.1 索引文件结构6.2 空闲存储空间管理 7、设备管理7.1数据传输控制7.2 虚设备和SPOOLING技术7.3 微内核操作系统7.4 嵌入式操作系统 说明&a…

Spring框架第一篇(Spring概述与IOC思想)

文章目录 一、Spring概述二、Spring家族三、Spring Framework四、IOC思想五、IOC容器在Spring中的实现 一、Spring概述 Spring 是最受欢迎的企业级 Java 应用程序开发框架&#xff0c;数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。…

分类预测 | Matlab实现RIME-LSSVM霜冰算法优化最小二乘支持向量机数据分类预测

分类预测 | Matlab实现RIME-LSSVM霜冰算法优化最小二乘支持向量机数据分类预测 目录 分类预测 | Matlab实现RIME-LSSVM霜冰算法优化最小二乘支持向量机数据分类预测分类效果基本介绍程序设计参考资料 分类效果 基本介绍 1.Matlab实现RIME-LSSVM霜冰算法优化最小二乘支持向量机数…

SpringBoot 日志系统解析

日志实现框架 常见框架: JULLogbacLog4jLog4j2 日志实现的抽象层 避免代码的改动影响用户的使用, 常见的: JCLSLF4J 日志发展历程 JDK1.3及以前, 通过System.(out | err).println打印, 存在巨大缺陷解决系统打印缺陷问题出现log4,2015年8月停止更新受到log4j影响, SUN公…

Windows版Apache5.7解压直用(免安装-绿色-项目打包直接使用)

windows下Apache分类 Apache分为 安装版和解压版 安装版: 安装方便&#xff0c;下一步------下一步就OK了&#xff0c;但重装系统更换环境又要重新来一遍&#xff0c;会特别麻烦 解压版&#xff08;推荐&#xff09;&#xff1a; 这种方式&#xff08;项目打包特别方便&#…

MQ概览及Kafka详解

文章目录 概览MQ优点MQ缺点常见MQ对比JMS消息模型点对点模式发布订阅模式 kafka基础架构发布订阅工作流程生产者生产者文件存储生产者分区策略生产者数据可靠性保证生产者数据一致性保证生产者ack机制ExactlyOnce生产者发送消息流程 消费者消费者分区分配策略消费者消费数据问题…

JS sort方法踩坑

JavaScript的sort()方法在默认情况下将数组元素视为字符串进行排序&#xff0c;而不是按照数字的大小。因此&#xff0c;对于包含数字的数组&#xff0c;sort()方法会按照字符串的排序规则进行排序。 例如&#xff0c;对于[2, 11]这个数组&#xff0c;按照字符串的排序规则&…

谈谈我的软考高级考证之路(系统架构设计师篇)

系统架构设计师备考资料请移步 2023年软考高级系统架构设计师视频教程&#xff0c;推荐下载&#xff01;获取。 备考总体策略 • 总体策略&#xff1a;刷视频记笔记刷真题 • 备考时间&#xff1a;建议报完名之后&#xff0c;开始备考&#xff0c;大致2-3个月&#xff08;基础…