博客 / 詳情

返回

Docker鏡像的目錄存儲講解

我們成功安裝完docker後,執行命令行sudo docker run hello-world, 如果是第一次執行,則會從遠程拉取hello-world的鏡像到本地,然後運行,顯示hello world。

以ubuntu系統為例,本地鏡像存儲於目錄/var/lib/docker文件夾下:

相關目錄介紹如下。

/var/lib/docker/image/overlay2:存儲鏡像管理數據的目錄,以使用的存儲驅動命名,在我的ubuntu系統上,使用的驅動為overlay2。

其中repositories.json文件相當於SAP UI5裏的manifest.json, 以及nodejs項目中的project.json:

/var/lib/docker/image/overlay2/distribution$: 從遠端拉到本地的鏡像相關元數據

/var/lib/docker/image/overlay2/imagedb:鏡像數據庫

/var/lib/docker/image/overlay2/imagedb/content:

每鏡像層次的配置digest,也就是鏡像ID。content文件夾裏能看到一個sha256子文件夾。

進入該子文件夾,會看到一個以鏡像ID命名的文件,我們用命令行docker images看到的鏡像ID的前12位就來自這個文件。

/var/lib/docker/image/overlay2/layerdb: 鏡像每個layer的元數據。

進入sha256,會看到layer的chain ID:

chain ID內的內容:

Docker鏡像的目錄存儲講解

要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.