For the complete documentation index, see llms.txt. This page is also available as Markdown.

4.2 列出镜像

在下载了镜像后,我们可以使用 docker image ls 命令列出本地主机上的镜像。

4.2.1 基本用法

查看本地已下载的镜像:

$ docker image ls
REPOSITORY   TAG       IMAGE ID       CREATED        SIZE
redis        latest    5f515359c7f8   5 days ago     183MB
nginx        latest    05a60462f8ba   5 days ago     181MB
ubuntu       24.04     329ed837d508   3 days ago     78MB
ubuntu       noble     329ed837d508   3 days ago     78MB

💡 docker images 是 docker image ls 的简写,两者等效。


4.2.2 输出字段说明

docker image ls 命令默认输出的列表包含仓库名、标签、镜像 ID、创建时间和占用空间等信息。

字段
说明

REPOSITORY

仓库名

TAG

标签(版本)

IMAGE ID

镜像唯一标识(短 ID,前 12 位)

CREATED

创建时间

SIZE

本地占用空间

同一镜像多个标签

注意上面的 ubuntu:24.04 和 ubuntu:noble 拥有相同的 IMAGE ID——它们是同一个镜像的不同标签,只占用一份存储空间。

版本说明:ubuntu:24.04 是具体版本号,ubuntu:noble 是发布代号(Ubuntu 24.04 的代号)。在 Dockerfile 中应优先使用版本号(如 ubuntu:24.04)而非发布代号,因为版本号在将来更易理解。


4.2.3 理解镜像大小

Docker 镜像的大小可能与我们通常理解的文件大小有所不同,这涉及到分层存储的概念。

本地大小 vs Hub 显示大小

位置
显示大小
说明

Docker Hub

29MB

压缩后的网络传输大小

docker image ls

78MB

本地解压后的实际大小

实际磁盘占用

由于镜像是分层存储,不同镜像可能共享相同的层:

因此,docker image ls 中各镜像大小之和 > 实际磁盘占用。

查看实际空间占用


4.2.4 过滤镜像

随着本地镜像数量的增加,我们需要更有效的方式来查找特定的镜像。Docker 提供了多种过滤方式。

按仓库名过滤

按仓库名和标签过滤

使用过滤器 --filter

过滤条件
说明
示例

dangling=true

虚悬镜像

-f dangling=true

before=镜像

在某镜像之前创建

-f before=nginx:latest

since=镜像

在某镜像之后创建

-f since=nginx:latest

label=key=value

按 LABEL 过滤

-f label=version=1.0

reference=pattern

按名称模式

-f reference='*:latest'


4.2.5 虚悬镜像

仓库名和标签都为 <none> 的镜像被称为虚悬镜像。自 Docker Engine 29 起,docker image ls 默认不再列出它们,需要 -a 或 dangling=true 过滤器才能看到。

什么是虚悬镜像

仓库名和标签都显示为 <none> 的镜像:

产生原因

  1. 镜像重新构建:新镜像使用了旧镜像的标签,旧镜像标签被移除

  2. docker pull 更新:拉取更新版本时,旧版本失去标签

处理虚悬镜像


4.2.6 中间层镜像

docker image ls 默认列出的只是有标签的顶层镜像。除了虚悬镜像,被隐藏的还有一类为了加速镜像构建、重复利用资源而存在的中间层镜像。

查看所有镜像:包含中间层

会显示默认隐藏的镜像:构建过程中产生的中间层,以及上面提到的虚悬镜像。中间层被其他镜像依赖。

⚠️ 不要删除中间层镜像。它们是其他镜像的依赖,删除会导致上层镜像无法使用。删除顶层镜像时会自动清理不再需要的中间层。


4.2.7 格式化输出

为了配合脚本使用或展示更关注的信息,我们可以使用 --format 参数来自定义输出格式。

只输出 ID

常用于配合其他命令:

显示完整 ID

显示摘要

自定义格式

使用 Go 模板语法自定义输出:

可用模板字段

字段
说明

.ID

镜像 ID

.Repository

仓库名

.Tag

标签

.Digest

摘要

.CreatedSince

创建后经过的时间

.CreatedAt

创建时间

.Size

大小


4.2.8 常用命令组合


最后更新于