Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。Docker是内核虚拟化,不使用Hypervisor是不完全虚拟化,依赖内核的特性实现资源隔离。本文主要介绍Docker CLI 中 docker images 常用命令。

1、docker images 简介

docker images 用于列出本地系统中已经下载的 Docker 镜像。该命令可以展示所有镜像的名称、标签、大小和创建时间。默认的docker镜像将显示所有顶级镜像、它们的存储库和标签以及它们的大小。Docker镜像具有中间层,可以提高可重用性,减少磁盘使用,并通过允许缓存每个步骤来加快Docker构建。默认情况下,这些中间层不显示。SIZE是镜像及其所有父镜像占用的累积空间。这也是docker save镜像时创建的Tar文件所使用的磁盘空间。如果镜像具有多个存储库名称或标签,则它将被多次列出。这个单一的镜像(通过其匹配的IMAGE ID识别)只占用列出的SIZE一次。

参考文档:https://docs.docker.com/engine/reference/commandline/images/

2、docker images 语法

docker images [OPTIONS] [REPOSITORY[:TAG]]

3、docker image save 命令

1)列出最近创建的镜像

docker images

REPOSITORY                TAG                 IMAGE ID            CREATED             SIZE
<none>                    <none>              77af4d6b9913        19 hours ago        1.089 GB
committ                   latest              b6fa739cedf5        19 hours ago        1.089 GB
<none>                    <none>              78a85c484f71        19 hours ago        1.089 GB
docker                    latest              30557a29d5ab        20 hours ago        1.089 GB
<none>                    <none>              5ed6274db6ce        24 hours ago        1.089 GB
postgres                  9                   746b819f315e        4 days ago          213.4 MB
postgres                  9.3                 746b819f315e        4 days ago          213.4 MB
postgres                  9.3.5               746b819f315e        4 days ago          213.4 MB
postgres                  latest              746b819f315e        4 days ago          213.4 MB

2)按名称和标签列出镜像

要查找具有特定名称和标签的镜像,可以命令行末尾指定相应的 REPOSITORY:TAG,如下:

docker images nginx:latest

3)列出完整长度的镜像ID(--no-trunc)

docker images --no-trunc

REPOSITORY                    TAG                 IMAGE ID                                                                  CREATED             SIZE
<none>                        <none>              sha256:77af4d6b9913e693e8d0b4b294fa62ade6054e6b2f1ffb617ac955dd63fb0182   19 hours ago        1.089 GB
committest                    latest              sha256:b6fa739cedf5ea12a620a439402b6004d057da800f91c7524b5086a5e4749c9f   19 hours ago        1.089 GB
<none>                        <none>              sha256:78a85c484f71509adeaace20e72e941f6bdd2b25b4c75da8693efd9f61a37921   19 hours ago        1.089 GB
docker                        latest              sha256:30557a29d5abc51e5f1d5b472e79b7e296f595abcf19fe6b9199dbbc809c6ff4   20 hours ago        1.089 GB
<none>                        <none>              sha256:0124422dd9f9cf7ef15c0617cda3931ee68346455441d66ab8bdc5b05e9fdce5   20 hours ago        1.089 GB
<none>                        <none>              sha256:18ad6fad340262ac2a636efd98a6d1f0ea775ae3d45240d3418466495a19a81b   22 hours ago        1.082 GB
<none>                        <none>              sha256:f9f1e26352f0a3ba6a0ff68167559f64f3e21ff7ada60366e2d44a04befd1d3a   23 hours ago        1.089 GB
tryout                        latest              sha256:2629d1fa0b81b222fca63371ca16cbf6a0772d07759ff80e8d1369b926940074   23 hours ago        131.5 MB
<none>                        <none>              sha256:5ed6274db6ceb2397844896966ea239290555e74ef307030ebb01ff91b1914df   24 hours ago        1.089 GB

4)列表镜像摘要(--digests)

--digests 命令用于列出本地系统中已经下载的 Docker 镜像及其摘要信息。该命令可以展示每个镜像的名称、标签、ID 和 SHA256 摘要等信息。

docker images --digests

docker images --digests nginx:latest

5)根据指定条件过滤本地系统中的 Docker 镜像

docker images --filter=reference='nginx:*' --filter=reference!='nginx:latest'

注意:可以根据其他条件进行筛选,例如按大小( --filter=size=)、按 ID( --filter=id=)或按镜像名称( --filter=name=)等。

6)自定义输出格式

占位符

描述

.ID

Image ID

.Repository

Image repository

.Tag

Image tag

.Digest

Image digest

.CreatedSince

自创建镜像以来经过的时间

.CreatedAt

创建镜像的时间

.Size

镜像磁盘大小

docker images --format "{{.Repository}}:{{.Tag}}"

4、命令选项

命令

描述

--all , -a

显示所有镜像(默认隐藏中间镜像)

--digests

显示摘要

--filter , -f

根据提供的条件过滤输出

--format

使用自定义模板格式化输出:

‘table’:使用列标题以表格格式打印输出(默认)

‘table TEMPLATE’:使用给定的Go模板以表格格式打印输出

‘json’:使用给定的Go模板打印输出。

有关使用模板格式化输出的更多信息,

请参阅https://docs.docker.com/go/formatting/

--no-trunc

不要截断输出

--quiet , -q

只显示镜像ID

5、子命令

命令

描述

docker image build

从Dockerfile构建镜像

docker image history

显示图像的历史

docker image import

从压缩包中导入内容以创建文件系统映像

docker image inspect

显示一个或多个镜像的详细信息

docker image load

从tar存档文件或STDIN加载镜像

docker image ls

镜像列表

docker image prune

移除未使用的镜像

docker image pull

从registry下载镜像

docker image push

上传镜像到registry

docker image rm

删除一个或多个镜像

docker image save

保存一个或多个镜像到tar存档(默认流式到STDOUT)

docker image tag

创建一个指向SOURCE_IMAGE的TARGET_IMAGE标签

推荐文档

相关文档

大家感兴趣的内容

随机列表