清理Docker廢棄鏡像與緩存詳細(xì)圖文教程
1 場(chǎng)景
在使用Docker部署項(xiàng)目時(shí)失敗,提示no space left on device,沒(méi)有剩余空間,如下所示。

2 解決辦法
2.1 查看磁盤空間占用情況
在終端輸入以下命令
df -h

可以看到占用率都達(dá)到100%
2.2 查看 Docker 容器、鏡像、卷等資源的占用情況
在終端輸入以下命令
docker system df

在構(gòu)建項(xiàng)目時(shí),會(huì)產(chǎn)生Build Cache,真正使用的鏡像,是占不了太多的空間的。
2.3 清理
清理鏡像有兩種方式,作者目前了解到的分別有以下兩種方式,列了一下區(qū)別,大家按需使用。
| 命令 | docker rmi <IMAGE_ID_1> … | docker system prune -a |
|---|---|---|
| 功能 | 用于刪除指定的鏡像。你可以通過(guò)鏡像 ID 或者鏡像名稱來(lái)指定要?jiǎng)h除的鏡像,支持輸入多個(gè),空格隔開(kāi)。 | 用于清理 Docker 系統(tǒng)中的不再使用的鏡像、緩存、容器和網(wǎng)絡(luò)等資源。它會(huì)刪除未使用的鏡像、停止的容器、無(wú)效的網(wǎng)絡(luò)等,以釋放磁盤空間。 |
| 范圍 | 只會(huì)刪除指定的鏡像。 | 清理整個(gè) Docker 系統(tǒng)中的未使用資源,包括未使用的鏡像、容器、網(wǎng)絡(luò)和數(shù)據(jù)卷等。 |
| 操作注意 | 需要明確指定要?jiǎng)h除的鏡像的 ID 或者名稱。在執(zhí)行該命令之前,請(qǐng)確保你要?jiǎng)h除的鏡像是不再需要的。 | 強(qiáng)制清理命令,它會(huì)刪除所有未使用的資源,包括未使用的鏡像、容器等。在執(zhí)行該命令之前,請(qǐng)確保你不再需要這些資源,因?yàn)椴僮魇遣豢赡娴摹?/td> |
作者這里使用的是 docker system prune -a, 正常情況下建議使用第一種,使用第二種的時(shí)候一定要注意。
2.3.1 清理指定鏡像
- 先查看所有得鏡像。
docker images

- 行以下命令,將 rmi 后邊的字符串換成自己想清理的 IMAGE ID,支持刪除多個(gè)
docker rmi 5457fb6ac112 01bbee84cc9c 4d81f08e4937
- 再次查看所有鏡像,發(fā)現(xiàn)鏡像刪除成功
- 如果遇到以下報(bào)錯(cuò),添加 -f 參數(shù)再刪除
Error response from daemon: conflict: unable to delete 5457fb6ac112 (must be forced) - image is referenced in multiple repositories
提示代表要?jiǎng)h除的鏡像被多個(gè)倉(cāng)庫(kù)引用,無(wú)法直接刪除。如果你確定要?jiǎng)h除這個(gè)鏡像,可以使用強(qiáng)制刪除命令來(lái)刪除
- 執(zhí)行以下命令
docker rmi -f 5457fb6ac112 01bbee84cc9c 4d81f08e4937
2.3.2 清理所有廢棄鏡像與Build Cache
- 在終端輸入以下命令
docker system prune -a

- 會(huì)提示Are you sure you want to continue,是否繼續(xù),輸入 y 回車即可,就可以看到如下日志。
WARNING! This will remove: - all stopped containers - all networks not used by at least one container - all images without at least one container associated to them - all build cache Are you sure you want to continue? [y/N] y Deleted Images: deleted: sha256:1c4f6085bbccd2e35f97973cbeb10f92da7ff1262914bb2426cb26ca982ba2fc deleted: sha256:d918c746d2b894403b51d05161b63b0a450187a67fcf3d554c523705d47b4f47 deleted: sha256:231a1ce2abdf3744abced50f9675d584e07e6b4523db1fb0f613b748ad06e946 deleted: sha256:f813c35c0538a81c322a6839bfd6d1616630a6b5c9aa2ee7f0f25a426a563d25 deleted: sha256:268e6417f2f8bda44087d663fea6dc2b7eab726fcd6b37434d594ddd12b4bd4e deleted: sha256:f2d9885d594165564996eeb6bf7d52f3dc5011ffdc9ed8fed6288724cd33b8de # =========================此處省略部分日志,太多了。。。。 Deleted build cache objects: w1c50dy2r45e6vo7n464zufhi wm32f28avtp3u1j729zwsqqhg ifbfsnqhsxa0lgpf8q583wt3p emv9b5icrzg3mt2o7qgytp44p rtum938pugfhp9i30lk7yaypa g24xa4962hmfp0wnmhyv3eehi sprlhorxphn4tu1idayycicez xm3zzvxi3ewm6fwmtpizv46lt n7372bzka4c96a4or52fa4k0u pcvjb2payp85tzepsjvnc8iw8 # =========================此處省略部分日志,太多了。。。。
- 清理完成,再次查看占用情況,清理成功

總結(jié)
到此這篇關(guān)于清理Docker廢棄鏡像與緩存的文章就介紹到這了,更多相關(guān)Docker廢棄鏡像與緩存清理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳解Docker私有倉(cāng)庫(kù)最簡(jiǎn)便的搭建方法
本篇文章主要介紹了Docker私有倉(cāng)庫(kù)最簡(jiǎn)便的搭建方法,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-02-02
詳解使用export/import導(dǎo)出和導(dǎo)入docker容器
本篇文章主要介紹了詳解使用export/import導(dǎo)出和導(dǎo)入docker容器,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07
Docker本地鏡像推送到阿里云的實(shí)現(xiàn)
本文介紹了在阿里云上創(chuàng)建容器鏡像服務(wù)實(shí)例,并將本地鏡像推送到阿里云的鏡像倉(cāng)庫(kù),具有一定的參考價(jià)值,感興趣的可以了解一下2024-12-12
Windows10系統(tǒng)下docker安裝指南以及踩坑解決
這篇文章主要給大家介紹了關(guān)于Windows10系統(tǒng)下docker安裝指南以及踩坑解決的相關(guān)資料,相信大家都知道Docker有很多種安裝的選擇,其中支持最好的是Ubuntu系統(tǒng),而且docker如果想在windows上運(yùn)行必須借助docker-machine,需要的朋友可以參考下2023-08-08
docker部署RustDesk自建服務(wù)器的小結(jié)
本文詳細(xì)介紹了如何使用Docker部署RustDesk自建服務(wù)器,本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-12-12
excel導(dǎo)出在docker環(huán)境中總是失敗的問(wèn)題
這篇文章主要介紹了excel導(dǎo)出在docker環(huán)境中總是失敗的問(wèn)題及解決方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,2020-09-09

