Virtualization
如何刪除我所有的 docker 鏡像?
有時我只想清除 docker 中的所有內容,然後從頭開始。有沒有一種系統的方法來刪除我所有的 Docker 容器和圖像?
容器
$ docker ps -a | head CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7b055e9e5f1f fedora:latest /bin/sh 6 days ago Exited (0) 6 days ago ecstatic_colden 40da968258eb fedora:latest /bin/sh 6 days ago Exited (127) 6 days ago naughty_thompson 5be4581afad6 fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago kickass_wright 4d6c33d4be6d fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago furious_fermat db7a29bdbc2d fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago mad_hawking e6b7365690ce fedora:latest /bin/bash 6 days ago Exited (0) 6 days ago trusting_ardinghelli 15655c21fcd3 8018e08e6a58 /bin/sh -c 'apt-get 3 weeks ago Exited (100) 3 weeks ago drunk_bardeen 607547aabbca f02ed0c206d5 /bin/sh -c 'apt-get 3 weeks ago Exited (100) 3 weeks ago cocky_franklin f031f28bd29a f02ed0c206d5 /bin/sh -c 'apt-get 3 weeks ago Exited (100) 3 weeks ago stoic_mcclintock
圖片
$ docker images -a | head REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE docker master 266a5746d179 2 weeks ago 1.528 GB <none> <none> c1f6a4b1345c 3 weeks ago 1.526 GB <none> <none> 6558c36ecb3f 3 weeks ago 1.526 GB <none> <none> b1b7c7a6b6a7 3 weeks ago 1.24 GB <none> <none> 0bf9d6bf97e9 3 weeks ago 1.182 GB <none> <none> 48c444f1d2e7 3 weeks ago 1.182 GB <none> <none> 5c5c172a0038 3 weeks ago 1.182 GB <none> <none> de5e09bb86c1 3 weeks ago 1.182 GB <none> <none> 785aaf265f18 3 weeks ago 1.182 GB
最簡單的方法是使用以下 3 個步驟:
- 停止所有容器
- 移除所有容器
- 刪除所有圖像
要實現這一點,您可以使用
docker ps
and commands 功能通過那里或switchdocker images
返回一個 ID 列表。這消除了這兩個命令通常返回的所有麻煩,並為您提供了一個不錯的列表,如下所示:-q``--quiet
預設輸出
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7b055e9e5f1f fedora:latest /bin/sh 6 days ago Exited (0) 6 days ago ecstatic_colden 40da968258eb fedora:latest /bin/sh 6 days ago Exited (127) 6 days ago naughty_thompson
安靜的輸出
$ docker ps -aq 7b055e9e5f1f 40da968258eb 5be4581afad6 4d6c33d4be6d
**注意:**兩者都
docker images
使用docker ps
或-a
開關--all
來顯示所有 ID。您可以利用此輸出來構造 Docker 命令,這些命令利用其他 Docker 命令的輸出,如下所示:
$ docker rm $(docker ps -qa)
打掃房子
因此,要完成刪除所有內容的任務,您可以使用以下命令:
$ docker stop $(docker ps -qa) $ docker rm $(docker ps -qa) $ docker rmi $(docker images -qa)