你可能不知道的 docker 命令的奇淫怪巧

你可能不知道的 docker 命令奇淫怪巧

Intro

介紹并收錄一些可能會(huì)用到的一些簡(jiǎn)單實(shí)用卻很少有人用的 docker 命令

dangling images

build 自己的 docker 鏡像的時(shí)候,有時(shí)會(huì)遇到用一個(gè)甚至多個(gè)中間層鏡像,這會(huì)一定程度上減少最終打包出來(lái) docker 鏡像的大小,但是會(huì)產(chǎn)生一些tag 為 none 的無(wú)用鏡像,也稱為懸掛鏡像 (dangling images)

列出所有的 dangling images:

docker images -f "dangling=true"

刪除所有的 dangling images:

docker rmi $(docker images -f "dangling=true" -q)

批量操作

當(dāng)服務(wù)器重啟或者因故關(guān)機(jī)時(shí),docker 容器可能需要全部重新啟動(dòng),啟動(dòng)所有 docker 容器

注:如果有依賴關(guān)系,如 link 等,應(yīng)該先啟動(dòng)這些被依賴的容器

docker start $(docker ps -aq)

停止所有 docker 容器

docker stop $(docker ps -aq)

刪除所有 docker 容器

docker rm $(docker ps -aq)

刪除所有 docker 鏡像

docker rmi $(docker images -q)

docker 資源清理

docker container prune # 刪除所有退出狀態(tài)的容器
docker volume prune # 刪除未被使用的數(shù)據(jù)卷
docker image prune # 刪除 dangling 或所有未被使用的鏡像

docker system prune #刪除已停止的容器、dangling 鏡像、未被容器引用的 network 和構(gòu)建過(guò)程中的 cache
# 安全起見,這個(gè)命令默認(rèn)不會(huì)刪除那些未被任何容器引用的數(shù)據(jù)卷,如果需要同時(shí)刪除這些數(shù)據(jù)卷,你需要顯式的指定 --volumns 參數(shù)
docker system prune --all --force --volumns #這次不僅會(huì)刪除數(shù)據(jù)卷,而且連確認(rèn)的過(guò)程都沒有了!注意,使用 --all 參數(shù)后會(huì)刪除所有未被引用的鏡像而不僅僅是 dangling 鏡像

Reference

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容