2015-09-22 50 views
4

當你輸入docker images它會告訴你哪些圖像是本地可用的和其他信息。部分信息是虛擬尺寸。那究竟是什麼?Docker鏡像的虛擬大小是什麼意思?

我在GitHub Issues #22 on docker找到了一點小小的解釋,但這仍然不清楚。我真正想知道的是,要下載的字節數以及映像在我的硬盤驅動器上需要的字節數。

此外Docker Hub 2.0還有其他信息。當您查看圖像的Tags頁面時,會顯示另一個值。至少這似乎總是比docker images給出的信息小得多。

回答

2

「虛擬大小」是指構成圖像的所有圖層的磁盤大小的總和。例如,如果您有兩張圖像app-1app-2,並且兩者都基於常見的distro圖像/圖層,其總大小爲100MB,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,但「Content-Length」(壓縮大小在傳輸中)僅爲97.5MB,假設您尚未擁有任何圖層,因此很可能您已經下載了第一個圖層,其中包含125.1MB的虛擬大小和51.4MB的「Content-Length」(並且很可能您已經擁有了它)頂層是debian:jessie,這是頂層圖像的通用基礎)。

irssi:latest

  • 總的虛擬尺寸:261.1 MB(261122797個字節)
  • 總V2的Content-Length:97.5 MB(97485603個字節)

層(13)

6d1ae97ee388924068b7a4797d995d57d1e6194843e7e2178e592a880bf6c7ad
  • 創建時間:星期五,2015年12月4日19時27分57秒GMT
  • 泊塢版本:1.8.3
  • 虛擬尺寸:125.1 MB(125115267個字節)
  • V2斑點:sha256:d4bce7fd68df2e8bb04e317e7cb7899e981159a4da89339e38c8bf30e6c318f0
  • V2的Content-Length :51.4 MB(51354256個字節)
  • V2的Last-Modified:週五,2015年12月4日19時45分49秒GMT
8b9a99209d5c8f3fc5b4c01573f0508d1ddaa01c4f83c587e03b67497566aab9

...

相關問題