Docker鏡像的目錄存儲講解
阿新 • • 發佈:2018-10-20
doc layer 原創文章 orien 一個 over 管理 nsh 分享
我們成功安裝完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內的內容:
要獲取更多Jerry的原創文章,請關註公眾號"汪子熙":
Docker鏡像的目錄存儲講解