docker images列出镜像

命令:docker imagesnginx

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

List images

Options:
  -a, --all             Show all images (default hides intermediate images)列出全部镜像
      --digests         Show digests列出更详细信息
  -f, --filter filter   Filter output based on conditions provided过滤 
如:
docker images -f dangling=true 能够把那些虚悬镜像列出来
这类镜像已是没用的了,可以使用
$ docker rmi $(docker images -q -f dangling=true)
进行删除
--format string Pretty-print images using a Go template --help Print usage --no-trunc Don't truncate output -q, --quiet Only show numeric IDs
列表包含了仓库名、标签、镜像 ID、建立时间以及所占用的空间。
[root@iZ943kh74qgZ ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              36540f359ca3        4 weeks ago         193MB

[root@iZ943kh74qgZ ~]# docker images --digests
REPOSITORY          TAG                 DIGEST                                                                    IMAGE ID            CREATED             SIZE
centos              latest              sha256:c1010e2fe2b635822d99a096b1f4184becf5d1c98707cbccae00be663a9b9131   36540f359ca3        4 weeks ago         193MB

[root@iZ943kh74qgZ ~]# docker images -q
36540f359ca3

其它用法redis

根据仓库名列出镜像

$ docker images ubuntu
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu              16.04               f753707788c5        4 weeks ago         127 MB
ubuntu              latest              f753707788c5        4 weeks ago         127 MB
ubuntu              14.04               1e0c3dd64ccd        4 weeks ago         188 MB
列出特定的某个镜像,也就是说指定仓库名和标签

$ docker images ubuntu:16.04
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu              16.04               f753707788c5        4 weeks ago         127 MB
除此之外,docker images 还支持强大的过滤器参数 --filter,或者简写 -f。以前咱们已经看到了使用过滤器来列出虚悬镜像的用法,它还有更多的用法。好比,咱们但愿看到在 mongo:3.2 以后创建的镜像,能够用下面的命令:

$ docker images -f since=mongo:3.2
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
redis               latest              5f515359c7f8        5 days ago          183 MB
nginx               latest              05a60462f8ba        5 days ago          181 MB
想查看某个位置以前的镜像也能够,只须要把 since 换成 before 便可。

此外,若是镜像构建时,定义了 LABEL,还能够经过 LABEL 来过滤。

$ docker images -f label=com.example.version=0.1
...
以特定格式显示

默认状况下,docker images 会输出一个完整的表格,可是咱们并不是全部时候都会须要这些内容。好比,刚才删除虚悬镜像的时候,咱们须要利用 docker images 把全部的虚悬镜像的 ID 列出来,而后才能够交给 docker rmi 命令做为参数来删除指定的这些镜像,这个时候就用到了 -q 参数。

$ docker images -q
5f515359c7f8
05a60462f8ba
fe9198c04d62
00285df0df87
f753707788c5
f753707788c5
1e0c3dd64ccd
--filter 配合 -q 产生出指定范围的 ID 列表,而后送给另外一个 docker 命令做为参数,从而针对这组实体成批的进行某种操做的作法在 Docker 命令行使用过程当中很是常见,不单单是镜像,未来咱们会在各个命令中看到这类搭配以完成很强大的功能。所以每次在文档看到过滤器后,能够多注意一下它们的用法。

另一些时候,咱们可能只是对表格的结构不满意,但愿本身组织列;或者不但愿有标题,这样方便其它程序解析结果等,这就用到了 Go 的模板语法。

好比,下面的命令会直接列出镜像结果,而且只包含镜像ID和仓库名:

$ docker images --format "{{.ID}}: {{.Repository}}"
5f515359c7f8: redis
05a60462f8ba: nginx
fe9198c04d62: mongo
00285df0df87: <none>
f753707788c5: ubuntu
f753707788c5: ubuntu
1e0c3dd64ccd: ubuntu
或者打算以表格等距显示,而且有标题行,和默认同样,不过本身定义列:

$ docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"
IMAGE ID            REPOSITORY          TAG
5f515359c7f8        redis               latest
05a60462f8ba        nginx               latest
fe9198c04d62        mongo               3.2
00285df0df87        <none>              <none>
f753707788c5        ubuntu              16.04
f753707788c5        ubuntu              latest
1e0c3dd64ccd        ubuntu              14.04
相关文章
相关标签/搜索