你不知道的 docker 命令的奇淫怪巧
你不知道的 docker 命令的奇淫怪巧
Intro
介紹並收錄一些可能會用到的一些簡單實用卻很少有人用的 docker 命令
dangling images
build 自己的 docker 映象的時候,有時會遇到用一個甚至多箇中間層映象,這會一定程度上減少最終打包出來 docker 映象的大小,但是會產生一些tag 為 none 的無用映象,也稱為懸掛映象 (dangling images
)
列出所有的 dangling images:
docker images -f "dangling=true"
刪除所有的 dangling images:
docker rmi $(docker images -f "dangling=true" -q)
批量操作
當伺服器重啟或者因故關機時,docker 容器可能需要全部重新啟動,啟動所有 docker 容器
注:如果有依賴關係,如 link 等,應該先啟動這些被依賴的容器
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 # 刪除所有退出狀態的容器 docker volume prune # 刪除未被使用的資料卷 docker image prune # 刪除 dangling 或所有未被使用的映象 docker system prune #刪除已停止的容器、dangling 映象、未被容器引用的 network 和構建過程中的 cache # 安全起見,這個命令預設不會刪除那些未被任何容器引用的資料卷,如果需要同時刪除這些資料卷,你需要顯式的指定 --volumns 引數 docker system prune --all --force --volumns #這次不僅會刪除資料卷,而且連確認的過程都沒有了!注意,使用 --all 引數後會刪除所有未被引用的映象而不僅僅是 dangling 映象