T-CREATOR

Dockerの利用していないゴミを掃除しディスクスペースを解放するいくつかのやり方を紹介

Dockerの利用していないゴミを掃除しディスクスペースを解放するいくつかのやり方を紹介

Dockerを使うと、イメージ、コンテナ、ボリューム、ネットワーク、そしてビルド時のキャッシュなど、様々なデータが生成されます。

これらはプロジェクトの進行と共に積み重なり、大量のディスクスペースを消費することがあります。
不要になったこれらのデータを定期的に削除することで、システムをクリーンに保ち、ディスクスペースを解放することができます。
ここでは、いくつかのやり方を紹介していきます。

使われていないDockerイメージの削除

特定のイメージを削除

直接イメージIDを指定し、指定したイメージを削除します。

zsh$ docker rmi <image_id>
  • 削除されるもの: 指定したイメージIDに関連するイメージ。
  • 保持されるもの: 他の全てのイメージ、コンテナ、ボリューム、ネットワーク。

すべての未使用イメージを削除

すべての未使用イメージを削除します

zsh$ docker image prune -a
  • 削除されるもの: すべての未使用のイメージ。
  • 保持されるもの: 現在使用中のイメージ、全てのコンテナ、ボリューム、ネットワーク。

未使用のコンテナの削除

特定のコンテナを削除

直接コンテナIDを指定し、指定したコンテナを削除します。

zsh$ docker rm <container_id>
  • 削除されるもの: 指定したコンテナIDに関連するコンテナ。
  • 保持されるもの: 他の全てのコンテナ、イメージ、ボリューム、ネットワーク。

すべての停止中のコンテナを削除

すべての停止中のコンテナを削除します

zsh$ docker container prune
  • 削除されるもの: すべての停止中のコンテナ。
  • 保持されるもの: 現在実行中のコンテナ、全てのイメージ、ボリューム、ネットワーク。

未使用のボリュームの削除

すべての未使用のボリュームを削除します

zsh$ docker volume prune
  • 削除されるもの: どのコンテナからも参照されていないボリューム。
  • 保持されるもの: 現在コンテナによって使用されているボリューム、全てのイメージ、コンテナ、ネットワーク。

未使用のネットワークの削除

すべての未使用のネットワークを削除します

zsh$ docker network prune
  • 削除されるもの: どのコンテナからも使用されていないネットワーク。
  • 保持されるもの: 現在コンテナによって使用されているネットワーク、全てのイメージ、コンテナ、ボリューム。

ビルドキャッシュの削除

ビルドキャッシュをすべて削除します

zsh$ docker builder prune
  • 削除されるもの: 未使用のビルドキャッシュ。
  • 保持されるもの: 最近使用されたビルドキャッシュを含む、全てのイメージ、コンテナ、ボリューム、ネットワーク。

Dockerシステムの全体的なクリーンアップ

削除対象を確認

zsh$ docker system df

すべての未使用のイメージ、コンテナ、ボリューム、ネットワークを削除します。

zsh$ docker system prune

-a オプションを使用すると、未使用のものだけでなく、全ての未接続イメージも削除されます。

zsh$ docker system prune -a

これらのコマンドを定期的に使用することで、Docker環境をきれいに保ち、ディスクスペースを有効に活用することができます。

記事Article

もっと見る