查看镜像信息
查看镜像的命令通常有:images、history和inspect,info等子命令
images
列出系统已下载好的所有镜像基础信息**REPOSITORY**
:表示来自于哪个仓库。**TAG**
:表示镜像的标签信息,标签只是标记,并不能标识镜像内容。**IMAGE ID**
:镜像ID,镜像的唯一标识,如果两个镜像ID相同,则说明它们实际上指向了同一个镜像,只是具有不同标签名而已。**CREATED**
:表示镜像最后的更新时间。**VIRTUAL SIZE**
:表示镜像大小,好的镜像往往体积会较小。
其他可选命令:
-a, --all Show all images (default hides intermediate images)
--digests Show digests
-f, --filter filter Filter output based on conditions provided
--format string Pretty-print images using a Go template
--no-trunc Don't truncate output
-q, --quiet Only show image IDs
inspect
获取镜像的详细信息,包括制作者、适应架构、各层的数字摘要等内容
语法如下:
docker inspect [imageName]
docker inspect gitlab/gitlab-runner
输出结果
[
{
"Id": "sha256:4a05b6a7fca0ccf20f17f27e8de0050265efc9f1ccb046c22b5fda79f196e5d3",
"RepoTags": [
"gitlab/gitlab-runner:latest"
],
"RepoDigests": [
"gitlab/gitlab-runner@sha256:885f5c60a3788453add33a57e1b1690dca4f1e27e84fa1c26976f13bb6949599"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2021-11-21T17:44:24.533835743Z",
"Container": "",
"ContainerConfig": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": null,
"Cmd": null,
"Image": "",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": null
},
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"DEBIAN_FRONTEND=noninteractive"
],
"Cmd": [
"run",
"--user=gitlab-runner",
"--working-directory=/home/gitlab-runner"
],
"ArgsEscaped": true,
"Image": "",
"Volumes": {
"/etc/gitlab-runner": {},
"/home/gitlab-runner": {}
},
"WorkingDir": "",
"Entrypoint": [
"/usr/bin/dumb-init",
"/entrypoint"
],
"OnBuild": null,
"Labels": null,
"StopSignal": "SIGQUIT"
},
"Architecture": "amd64",
"Os": "linux",
"Size": 2014374536,
"VirtualSize": 2014374536,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/e045b0d7cede39f731b84d105f588d1600fe8ac4da42a42f3964d9484ed81a6f/diff:/var/lib/docker/overlay2/5ab1dcf2c94b178717d9148884438d8a7cfb79d47f995c898a4af043ad4cb44d/diff:/var/lib/docker/overlay2/bcb1539f1156a1866c1f667c592d74991bfe844ee5e94458ef7462153f7cbc9c/diff:/var/lib/docker/overlay2/543257feb8c81525eafb3d3fea19fad76b5acd51635c88871cc724a9bf356ebd/diff:/var/lib/docker/overlay2/13718e59b573721c362fc8f9ed7fe4ee55490b0883c764fe25193f753a00756c/diff",
"MergedDir": "/var/lib/docker/overlay2/e7816f7523b9d4d5ad834ff25be1fa12d1a2e7488a271dfc7322ee1bd3e4c192/merged",
"UpperDir": "/var/lib/docker/overlay2/e7816f7523b9d4d5ad834ff25be1fa12d1a2e7488a271dfc7322ee1bd3e4c192/diff",
"WorkDir": "/var/lib/docker/overlay2/e7816f7523b9d4d5ad834ff25be1fa12d1a2e7488a271dfc7322ee1bd3e4c192/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:9f54eef412758095c8079ac465d494a2872e02e90bf1fb5f12a1641c0d1bb78b",
"sha256:cb42c96bf5a2978289ed421a6fa0ada6d7d134d75f1fccaceb79199f728a5e1c",
"sha256:46529c561e988adf92a39892f06fece04866a029a73cfcc7fd0142c82901c77d",
"sha256:80b981c4da2e54fc0fd00df83d9f3b2a48902e6175cfccecafc43392dd6873db",
"sha256:7e7650a4f42fdbd05e8d99a3c24ec8c5f7ab6eb9f3b8ae28ad63e24c81313618",
"sha256:439f627256739a2bf2a47b1facedfbbd0b30df71e3493b2a8b5c16af50bc6ba7"
]
},
"Metadata": {
"LastTagTime": "0001-01-01T00:00:00Z"
}
}
]
上面返回的是一个JSON格式的消息,如果只要其中某一项的内容时,可以使用-f来指定,语法格式
docker insepect -f {{".项名(keyName)"}} 镜像名
如我想查容器Id
[root@Vue ~]# docker inspect -f {{".Id"}} gitlab/gitlab-runner
>>> sha256:4a05b6a7fca0ccf20f17f27e8de0050265efc9f1ccb046c22b5fda79f196e5d3
更为详细的 inspect命令其它操作
https://blog.csdn.net/yuelai_217/article/details/125266030
history
查看镜像历史
Docker的镜像文件是由多个层组成,那么我们怎么才知道各层的内容具体是什么呢?
因此可以使用history命令,该命令将列出各层的创建信息。
命令:
docker history [imageName]
示例:
docker history gitlab/gitlab-runner
这个时候发现 CREATED BY 中显示的命令过长的话会被隐藏此时我们可以使用—no-trunc 选项来输出完整命令。
语法:
docker history gitlab/gitlab-runner --no-trunc
其他可选参数:
--format string Pretty-print images using a Go template
-H, --human Print sizes and dates in human readable format (default true)
--no-trunc Don't truncate output
-q, --quiet Only show image IDs
查看Docker版本
docker -v
docker --version
docker version
查看Docker运行相关信息
docker info