ブログに戻る

Dockerリソースのクリーンアップ – イメージ、コンテナ、ボリューム

Dockerリソースのクリーンアップ – イメージ、コンテナ、ボリューム

Docker は、近年の組織において最も人気のある製品の1つです。コンテナ内でのアプリケーション管理プロセスを非常に容易にします。Dockerはコンテナを使用するため、アプリケーションにポータビリティ、パフォーマンス、アジリティ、スケーラビリティ、および分離性を提供します。コンテナは仮想マシンよりもポータブルで、必要なリソースも少なくて済みます。Dockerを使用していると、未使用のイメージ、ボリューム、コンテナが過剰に蓄積されがちです。これらのリソースは出力を乱雑にし、多くのディスク容量を消費します。このチュートリアルでは、Dockerリソースをクリーンアップし、サーバーを整理する方法を学びます。

すべてをパージ

イメージ、停止したコンテナ、ボリューム、ネットワークを含むすべてのDockerリソースを、単一のコマンドでクリーンアップできます。以下のオプションから1つを選択できます:

参考: 宙ぶらりん(Dangling)なリソースとは、実行中のどのコンテナにも関連付けられていないリソースのことです。

オプション 1:
以下が削除されます:
– すべての停止したコンテナ
– 少なくとも1つのコンテナで使用されていないすべてのネットワーク
– すべての宙ぶらりん(dangling)なイメージ
– すべての宙ぶらりん(dangling)なビルドキャッシュ

オプション 2:
以下が削除されます:
– すべての停止したコンテナ
– 少なくとも1つのコンテナで使用されていないすべてのネットワーク
– 少なくとも1つのコンテナに関連付けられていないすべてのイメージ
– すべてのビルドキャッシュ

オプション 3:
以下が削除されます:
– すべての停止したコンテナ
– 少なくとも1つのコンテナで使用されていないすべてのネットワーク
– 少なくとも1つのコンテナで使用されていないすべてのボリューム
– 少なくとも1つのコンテナに関連付けられていないすべてのイメージ
– すべてのビルドキャッシュ

docker prune options

Dockerイメージの削除

特定のイメージを削除するには、そのイメージIDを知る必要があります。DockerコンテナのイメージIDは、“docker images”コマンドを使用して確認できます。これについては、次のチュートリアルで説明しています:UbuntuでDockerをインストール & 操作する方法.

イメージの一覧表示:
イメージの削除:
docker rmi

宙ぶらりん(Dangling)なイメージの削除:

Dockerイメージをビルドすると、通常は複数のイメージレイヤーが作成されます。宙ぶらりん(Dangling)なイメージとは、タグ付けされたどのイメージとも関連性のないレイヤーのことです。これらはディスク容量を消費するだけで、何の役にも立ちません。次のコマンドを使用して一覧表示できます:

次のコマンドを実行することで、これらのイメージを削除できます:

パターンに基づいたイメージの削除

“grep”コマンドを使用して特定のパターンに基づいてイメージを簡単に見つけ、それを“awk”を使用して“docker rmi”コマンドに渡すことで削除できます。以下のコマンドを使用し、それぞれの“pattern”部分を置き換えてください:

一覧表示:
削除:
すべてのイメージを削除する

次のコマンドを使用して、すべてのDockerイメージを一覧表示できます。

すべて削除することを決定した場合は、次のコマンドを使用してすべて削除できます。

 

コンテナの削除:

不要なイメージをすべてクリアしたので、次は不要なコンテナをいくつか削除します。

コンテナを一覧表示するには、次のコマンドを使用します。

コンテナを削除するには、次のコマンドを使用します。

docker rm container
コンテナを一時的に実行する

コンテナを1回だけ実行したい場合は、終了時にコンテナを自動的に削除するように選択できます。これを行うには、次のコマンドを使用します。

終了したコンテナの削除

終了したコンテナは、“-f”引数を使用してフィルタリングできます。次のコマンドを使用して、終了したコンテナを一覧表示します。

フィルタリングしたら、次のコマンドを使用して削除します。

パターンに基づいてコンテナを削除する

“grep”コマンドを使用して特定のパターンに基づいてコンテナを簡単に見つけ、それを“awk”を使用して“docker rm”コマンドに渡すことで削除できます。次のコマンドを使用し、それぞれの“pattern”を置き換えてください。

一覧表示:
削除:
すべてのコンテナの停止と削除

実行する前に、サーバー上のすべてのコンテナを一覧表示して確認してください。本当に削除してもよいと確信した場合のみ、次のコマンドを実行します。

確認のためにコンテナを一覧表示する:

停止と削除:

ボリュームの削除

特定のボリュームを削除する

特定のボリュームを削除するには、ボリューム名を知る必要があります。それを確認するには、ボリュームを一覧表示します。

一覧表示:
削除:
docker volume rm
ダングリングボリュームの削除

コンテナを削除しても、そこにアタッチされていたボリュームは自動的には削除されません。このようなボリュームはダングリングボリュームと呼ばれます。そのようなボリュームを見つけるには、コマンドでフィルター引数を使用します。

そのようなダングリングボリュームをすべて削除するには、次のコマンドを使用します。

 

コンテナと名前なしボリュームを削除する

コンテナの実行中に匿名または名前なしのボリュームを作成した場合、1つのコマンドでコンテナと一緒に削除できます。ただし、ボリュームに名前がある場合は、コンテナのみが削除されます。

 

このチートシートを手に入れたので、サーバー上で不要になったDockerリソースをクリーンアップする準備が整ったはずです。

快適なコンピューティングを!

author

Akshay Nagpal

著者 · CloudSigma

Preslav DobrevはCloudSigmaのクリエイティブデザイナーであり、従来型および革新的なマーケティングチャネルを活用した一貫性のあるビジネスアイデンティティに注力しています。彼は芸術的なビジョンと戦略的マーケティングを融合させ、インパクトのあるブランドナラティブを生み出すことに長けています。

コメント

コメントはまだありません。最初のコメントを投稿しましょう。