Docker 是一個(gè)非常流行的容器化平臺(tái),因其輕量級(jí)和快速部署的特點(diǎn)而備受歡迎。本文主要討論 Docker 存儲(chǔ)空間的相關(guān)問(wèn)題。
首先,Docker 的默認(rèn)存儲(chǔ)驅(qū)動(dòng)是overlay2
,它允許在同一主機(jī)上運(yùn)行多個(gè)容器,每個(gè)容器都有自己的虛擬文件系統(tǒng)。但是,這樣的存儲(chǔ)方式會(huì)消耗大量的存儲(chǔ)空間。
docker info
...
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
可以看到,我們當(dāng)前的存儲(chǔ)驅(qū)動(dòng)是overlay2
。
如果您不是在虛擬機(jī)上運(yùn)行 Docker,而是在物理主機(jī)上運(yùn)行 Docker,則應(yīng)該考慮使用btrfs
作為存儲(chǔ)驅(qū)動(dòng)。Btrfs 可以更好地管理 Docker 的存儲(chǔ)空間,這意味著更少的硬盤空間被浪費(fèi)。
docker info
...
Storage Driver: btrfs
Backing Filesystem: btrfs
Supports d_type: true
Native Overlay Diff: false
當(dāng)運(yùn)行 Docker 后,您可以使用以下命令來(lái)查看本地 Docker 存儲(chǔ)空間。
docker system df
輸出顯示了您本地 Docker 存儲(chǔ)使用的總空間和已使用空間。
Type Total Active Size Shared Size Unique Size
--------------------------------------------------------------------------------------------------------------
Images 27 6 9.332GB 8.15GB 1.18GB
Containers 6 4 514MB 0B 514MB
Local Volumes 5 3 126.1MB 0B 126.1MB
Build Cache 0 0 0B 0B 0B
您可以看到,本例中 Docker 使用了約 9.332GB 的空間。
如果您想清理 Docker 存儲(chǔ)空間,可以使用以下命令:
docker system prune
此命令將刪除未使用的 Docker 鏡像、停止的容器和未使用的本地卷。
總之,對(duì)于那些使用 Docker 的人來(lái)說(shuō),管理存儲(chǔ)空間是一個(gè)必不可少的任務(wù)。這篇文章提供了一些有用的技巧,以最大程度地節(jié)省存儲(chǔ)空間。