docker images 命令可直接查看本地镜像的大小(SIZE)和创建时间(CREATED),默认显示 REPOSITORY、TAG、IMAGE ID、CREATED、SIZE 五列;CREATED 为相对时间,SIZE 为去重后的压缩总大小。

用 docker images 命令就能直接查看本地所有镜像的大小和创建时间,它默认显示的列就包含 REPOSITORY、TAG、IMAGE ID、CREATED(即创建时间)、SIZE(即镜像大小)。
基础查看:显示大小与创建时间
运行以下命令:
docker images
输出示例:
REPOSITORY TAG IMAGE ID CREATED SIZE nginx latest 605c77e624dd 3 weeks ago 141MB redis alpine a1a958a24b1c 4 weeks ago 38.4MB ubuntu 22.04 b9ae7b2c22bc 2 months ago 77.8MB
其中 CREATED 是镜像构建完成的时间(相对当前时间,如 “3 weeks ago”),SIZE 是该镜像层的压缩后总大小(含所有父层,但去重计算)。
按大小或时间排序,便于排查大镜像
镜像列表默认不排序。可结合 --format 和 sort 提升可读性:
- 按大小降序(最大的在前):
docker images --format "{{.Size}}\t{{.Repository}}:{{.Tag}}\t{{.CreatedSince}}" | sort -hr
- 按创建时间倒序(最新的在前):
docker images --format "{{.CreatedSince}}\t{{.Repository}}:{{.Tag}}\t{{.Size}}" | sort -r
注意:sort -h 要求 GNU coreutils ≥8.12(Linux 通常支持;macOS 的 sort 不支持 -h,可用 gsort -hr 替代,需先安装 coreutils)。
查看更详细的元数据(含精确时间戳和层级大小)
如果需要 UTC 时间戳、各层 ID 或每层实际大小,用:
docker image inspect <IMAGE_ID> --format='{{.Created}} {{.Size}} {{.Id}}'
或批量查看所有镜像的精确创建时间和字节数大小:
docker images --quiet | xargs -r docker image inspect --format='{{.Created}} {{.Size}} {{.RepoTags}}' | head -10
这里 {{.Created}} 输出 ISO 8601 格式时间(如 2024-05-12T08:23:41.123456789Z),{{.Size}} 是字节数,可配合 numfmt 转为易读格式:
docker images --quiet | xargs -r docker image inspect --format='{{.Size}}' | numfmt --to=iec-i --suffix=B
清理长期未用的大镜像时的实用建议
- 优先筛选
CREATED较久且SIZE较大的镜像,它们往往已过时或调试残留 - 注意
<none>:<none>镜像(悬空镜像),通常无标签,可用docker images -f "dangling=true"单独列出 -
SIZE显示的是“逻辑大小”,不是磁盘占用;实际空间释放需执行docker system prune或docker image prune


















