docker該如何刪除已停止的容器
一、docker刪除已停止的容器
1、根據容器的狀態,刪除Exited狀態的容器
先停止容器、再刪除鏡像中的容器、最後刪除none的鏡像。執行命令如下:
docker stop $(docker ps -a | grep "Exited" | awk '{print $1 }') #停止容器 docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }') #刪除容器 docker rmi $(docker images -a| grep "none" | awk '{print $3}') #刪除鏡像
2、刪除所有未運行的容器(刪除所有停止的容器)
(已經運行的刪除不瞭,未運行的就一起被刪除瞭)
docker rm $(docker ps -a -q)
其他:
查詢狀態為:Exited的容器並刪除
docker ps -a | grep "Exited" | awk '{print $1 }' //查找 docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }') //查找並刪除
二、刪除none的鏡像
# 刪除none鏡像 docker rmi $(docker images | grep "none" | awk '{print $3}') # 直接刪除帶none的鏡像,報錯瞭。提示先停止容器。 docker stop $(docker ps -a | grep "Exited" | awk '{print $1 }') //停止容器 docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }') //刪除容器 docker rmi $(docker images | grep "none" | awk '{print $3}') //刪除鏡像
備註:
docker中 啟動所有的容器命令 docker start $(docker ps -a | awk '{ print $1}' | tail -n +2) docker中 關閉所有的容器命令 docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2) docker中 刪除所有的容器命令 docker rm $(docker ps -a | awk '{ print $1}' | tail -n +2) docker中 刪除所有的鏡像 docker rmi $(docker images | awk '{print $3}' |tail -n +2) docker start $(docker ps -aq) # 啟動所有容器 docker start $(docker ps -aq -f status=exited) # 啟動所有狀態為exited 的容器,和上面的命令效果一致 dockerrm$(docker ps-q --filter “status=exited”)
附:停止正在運行中的docker進程
執行以下命令
docker ps
結果如下
ONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ffc1792471da registry.cn-shanghai.aliyuncs.com/tcc-public/super-mario-ppo:r1 "/bin/bash" 5 seconds ago Up 4 seconds modest_wright
執行以下命令停止進程
docker kill ffc1792471da
查看結果
docker ps
結果如下
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
總結
到此這篇關於docker該如何刪除已停止的容器的文章就介紹到這瞭,更多相關docker刪除已停止容器內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- docker 清理緩存腳本解析
- docker images本地遷移的實現
- Docker初級網絡端口映射的配置
- 常用的Docker命令及示例匯總分析
- 刪除docker images中為none的鏡像操作