はじめに
Docker を長く使っているうちに、docker build や docker run を繰り返していると
ストレージ容量がどんどん削られてしまうので、原因と対処方法を自分用にまとめました。
※備忘録であり、「自分が理解できた範囲で整理したメモ」です。間違いや良い方法等あればぜひ教えて下さい。
まず現状の容量を確認
docker system df
ここで Images / Build Cache / Containers のどこが大きいか確認して、どこを減らすべきか判断する。
容量を安全な順番で解放していく
1. 停止中のコンテナを削除
docker container prune
動作中のコンテナは消えないので一番手をつけやすい。
2. ビルドキャッシュを削除
docker builder prune
もっと削りたい場合は
docker builder prune -a
3. 未使用イメージの削除
docker image prune
一気に削る場合
docker image prune -a
ただしローカルのプロジェクトで使っているイメージまで消える可能性がある → 実行する前に docker images で残したいものがないか確認した方がよい。
4. すべてまとめて掃除
docker system prune -a
さらにボリュームまで消す場合
docker system prune -a --volumes
まとめ
これでひとまずストレージ不足の警告に怯える日々とはお別れです。
docker system prune 系は強力ですが、 -a オプションや --volumes は、本当に消して良いか一呼吸おいてから実行するのが良さそうです。
定期的に docker system df を叩いて、肥大化していないかチェックする癖をつけたいと思います。