解決Docker Image鏡像無法刪除問題的方法
前言
Docker是Docker.Inc公司開源的一個基于輕量級虛擬化技術的容器引擎項目,整個項目基于Go語言開發(fā),并遵從Apache 2.0協(xié)議。通過分層鏡像標準化和內(nèi)核虛擬化技術,Docker使得應用開發(fā)者和運維工程師可以以統(tǒng)一的方式跨平臺發(fā)布應用,并且以幾乎沒有額外開銷的情況下提供資源隔離的應用運行環(huán)境。由于眾多新穎的特性以及項目本身的開放性,Docker在不到兩年的時間里迅速獲得諸多IT廠商的參與,其中更是包括Google、Microsoft、VMware等業(yè)界行業(yè)領導者。同時,Docker在開發(fā)者社區(qū)也是一石激起千層浪,許多如我之碼農(nóng)紛紛開始關注、學習和使用Docker,許多企業(yè),尤其是互聯(lián)網(wǎng)企業(yè),也在不斷加大對Docker的投入,大有掀起一場容器革命之勢。
發(fā)現(xiàn)問題:
鏡像是Docker最核心的技術之一,也是應用發(fā)布的標準格式。最近在工作中遇到一個問題,問題如下:
Error response from daemon: conflict: unable to delete 4ac2d12f10cd (must be forced) - image is referenced in multiple repositories
來自守護進程的錯誤響應:沖突:無法刪除4ac2d12f10cd(必須強制) - 映像在多個存儲庫中被引用
1.刪除鏡像
查看鏡像
root@souyunku:~/mydocker# docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx v1 4ac2d12f10cd 41 minutes ago 108MB souyunku/nginx v1 4ac2d12f10cd 41 minutes ago 108MB hello-world latest f2a91732366c 5 weeks ago 1.85kB
刪除失敗
刪除其中一個鏡像,這里的鏡像有1個repo引用,并且沒有容器使用
并且沒有容器使用
root@souyunku:~/mydocker# docker container ls -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 4c104074b3f4 hello-world "/hello" About an hour ago Exited (0) About an hour ago priceless_hawking
鏡像有1個repo引用
root@souyunku:~/mydocker# docker rmi 4ac Error response from daemon: conflict: unable to delete 4ac2d12f10cd (must be forced) - image is referenced in multiple repositories
2.解決方法
刪除REPOSITORY
被刪除的ImageID,這里存在1個REPOSITORY名字引用,解決方法如下:
即刪除時指定名稱,而不是IMAGE ID。
root@souyunku:~/mydocker# docker rmi souyunku/nginx:v1 Untagged: souyunku/nginx:v1
再刪除IMAGE ID就可以了:
root@souyunku:~/mydocker# docker rmi 4ac Untagged: nginx:v1 Deleted: sha256:4ac2d12f10cdb99c099749432b7a450ee1c6958e0f2f964cd64c6b086ba3e622 Deleted: sha256:346164f732e08d72d1f64828acda4e5ca93f79473f443ce57d9cfe69d9b66b24 Deleted: sha256:3f8a4339aadda5897b744682f5f774dc69991a81af8d715d37a616bb4c99edf5 Deleted: sha256:bb528503f6f01b70cd8de94372e1e3196fad3b28da2f69b105e95934263b0487 Deleted: sha256:410204d28a96d436e31842a740ad0c827f845d22e06f3b1ff19c3b22706c3ed4 Deleted: sha256:2ec5c0a4cb57c0af7c16ceda0b0a87a54f01f027ed33836a5669ca266cafe97a
3.查看鏡像
root@souyunku:~/mydocker# docker images REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest f2a91732366c 5 weeks ago 1.85kB
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
docker部署rustdesk遠程控制服務器的實現(xiàn)
RustDesk是一款體驗優(yōu)秀的遠程控制軟件,本文主要介紹了docker部署rustdesk遠程控制服務器的實現(xiàn),具有一定的參考價值,感興趣的可以了2024-05-05