当您键入docker images
时,它会显示本地可用的图像和其他信息。部分此信息是虚拟大小。究竟是什么?
我在GitHub Issues #22 on docker中找到了一点解释,但这对我来说仍然不清楚。我真正想知道的是,要下载的字节数以及图像在硬盘上需要的字节数。
此外,Docker Hub 2.0还有其他信息。当您查看图像的Tags页面时,会显示另一个值。至少与docker images
给出的信息相比,这似乎总是要小得多。
答案 0 :(得分:3)
“虚拟大小”是指由图像组成的所有图层的磁盘大小的总和。例如,如果您有两个图像,app-1
和app-2
,并且两者都基于总大小为100MB的常见distro
图像/图层,并且app-1
添加了额外的10MB,app-2
增加了20MB,虚拟大小分别为110MB和120MB,但总磁盘使用量仅为130MB,因为这两个基础层共享。
由于在传输过程中对图层应用了gzip压缩,传输大小将会减少(在大多数情况下会相当大)。
https://github.com/docker-library/docs/blob/162cdda0b66dd62ea1cc80a64cb6c369e341adf4/irssi/tag-details.md#irssilatest中提供的扩展详细信息可能会使这一点更具体。正如您所看到的,irssi:latest
的虚拟大小(所有磁盘上的图层大小的总和)为261.1MB,但“内容长度”(传输中的压缩大小)仅为97.5MB,并且假设您还没有任何图层,当您很可能已经下载了第一层,其中虚拟大小为125.1MB,“内容长度”为51.4MB(可能是您已经拥有它,因为顶层是debian:jessie
,这是顶级图像的通用基础。)
irssi:latest
- 总虚拟大小:261.1 MB(261122797字节)
- 总v2内容长度:97.5 MB(97485603字节)
图层(13)
6d1ae97ee388924068b7a4797d995d57d1e6194843e7e2178e592a880bf6c7ad
- 创建时间:2015年12月4日星期五19:27:57 GMT
- Docker版本:1.8.3
- 虚拟大小:125.1 MB(125115267字节)
- v2 Blob:
sha256:d4bce7fd68df2e8bb04e317e7cb7899e981159a4da89339e38c8bf30e6c318f0
- v2内容长度:51.4 MB(51354256字节)
- v2 Last-Modified:Fri,04 Dec 2015 19:45:49 GMT
8b9a99209d5c8f3fc5b4c01573f0508d1ddaa01c4f83c587e03b67497566aab9
...