/var/lib/docker/overlay2
是 Docker 用來儲存映像檔和容器層的主要目錄,特別是在 Docker 預設使用的 overlay2
儲存驅動時。它的作用如下:
映像層的儲存:每個 Docker 映像檔由多個層組成,而 overlay2
負責管理這些層,並使用分層文件系統來減少儲存空間的使用。例如,如果多個映像檔共享相同的基礎層(如相同的作業系統層),overlay2
會在儲存上進行優化,避免重複儲存相同的數據。
容器層的儲存:當從映像檔啟動容器時,Docker 會為該容器新增一個「可寫層」,該層存放該容器中的寫入操作,如新增或修改的檔案。這層數據也位於 overlay2
目錄內,確保每個容器可以在原始映像檔之上運行,並能保持資料獨立性。
分層和快取機制:overlay2
使用分層技術來提升效能,讓 Docker 容器在啟動和運行時的讀取操作更有效率。同時,它也能更快地重用和快取已經存在的層,減少對磁碟的操作。
如果 Docker 使用的是不同的儲存驅動(如 aufs
或 btrfs
),這個目錄的路徑或結構可能不同,但功能大致相同。