日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

清理或刪除docker無用鏡像的操作方法_docker

作者:我怎么又餓了呀 ? 更新時間: 2023-02-15 編程語言

清除docker無用鏡像

一、查看 docker 占用的資源

在進行資源清理之前我們有必要搞清楚 docker 都占用了哪些系統的資源。這需要綜合使用不同的命令來完成。

docker container ls:默認只列出正在運行的容器,-a 選項會列出包括停止的所有容器。

docker image ls:列出鏡像信息,-a 選項會列出 intermediate 鏡像(就是其它鏡像依賴的層)。

docker volume ls:列出數據卷。

docker network ls:列出 network。

docker info:顯示系統級別的信息,比如容器和鏡像的數量等。

通過這些命令查看 docker 使用的資源情況后,相信你已經決定要清理 docker 占用的一些資源了!讓我們先從那些未被使用的資源開始。

二、只刪除那些未被使用的資源

Docker 提供了方便的 docker system prune 命令來刪除那些已停止的容器、dangling 鏡像、未被容器引用的 network 和構建過程中的 cache:

$ docker system prune

使用以下命令清理已經停止運行的docker容器

 docker rm $(docker ps --all -q -f status=exited)

1、通過標簽刪除鏡像

通過如下兩個都可以刪除鏡像:

docker rmi [image]

或者:

docker image rm  [image]

支持的子命令如下:

  • -f, -force: 強制刪除鏡像,即便有容器引用該鏡像;
  • -no-prune: 不要刪除未帶標簽的父鏡像;

2、通過 ID 刪除鏡像

除了通過標簽名稱來刪除鏡像,我們還可以通過制定鏡像 ID, 來刪除鏡像,如:

docker rmi ID

一旦制定了通過 ID 來刪除鏡像,它會先嘗試刪除所有指向該鏡像的標簽,然后在刪除鏡像本身。

3、刪除鏡像的限制

  • 先刪除引用這個鏡像的容器;
  • 再刪除這個鏡像;

也就是,根據上圖中提示的,引用該鏡像的容器 ID, 執行刪除命令:

docker rm  ID

然后,再執行刪除鏡像的命令:

docker rmi ID

4、清理鏡像

我們在使用 Docker 一段時間后,系統一般都會殘存一些臨時的、沒有被使用的鏡像文件,可以通過以下命令進行清理:

docker image prune

它支持的子命令有:

  • -a, --all: 刪除所有沒有用的鏡像,而不僅僅是臨時文件;
  • -f, --force:強制刪除鏡像文件,無需彈出提示確認;

PS:docker 批量刪除無用的容器或鏡像

docker rm `docker ps -a | grep Exited | awk '{print $1}'` ? 刪除異常停止的docker容器

docker rmi -f ?`docker images | grep '<none>' | awk '{print $3}'` ?刪除名稱或標簽為none的鏡像

原文鏈接:https://kayer.blog.csdn.net/article/details/124703055

欄目分類
最近更新