logo

Docker 内のすべてのコンテナとイメージを削除する

前提条件: ドッカー

ドッカー コンテナを停止せずに終了した場合、終了時にコンテナが停止していないため、手動でコンテナを停止する必要があります。同様に、イメージの場合も、一部のコンテナまたはイメージがベース イメージに依存している可能性があるため、上から下に削除する必要があります。ベース イメージはいつでもダウンロードできます。したがって、不要なイメージや未解決のイメージを現在のマシンから削除することをお勧めします。



Dockerでイメージを削除するにはどうすればよいですか?

画像の削除

ImageId/Name でイメージを削除するには、次のコマンドを使用できます。 Dockerfile を使用して Docker イメージを構築する方法の詳細については、「Dockerfile の概念」を参照してください。

docker rmi>

画像を強制的に削除

ImageID/Name によって Docker イメージを強制的に削除するには、次のコマンドを使用します。

docker rmi -f>

注記: コンテナーの実行中にイメージを強制的に削除したり、通常は削除したりすることはできません。



ぶら下がっている画像

ダングリング イメージとは、リポジトリにもタグにもマップされていないイメージです。使用されるコマンドは、ぶら下がりイメージを削除することです。 Docker イメージにタグを付ける方法の詳細については、「Docker イメージ タグ」を参照してください。

docker image prune>

すべての画像を削除する

Docker マシン内のすべてのイメージを削除して、システム内の不要な不要なスペースを削除できます。とにかく、最新バージョンまたは特定のバージョンのイメージを Docker レジストリまたはキャッシュから取得できます。

docker rmi $(docker images -q)>
すべての画像を削除します。

Docker でコンテナを削除する方法

コンテナを削除する前に、コマンドを使用するためにまずコンテナを停止する必要があります。



docker stop>

Docker Stop と Docker Kill の違い

Docker stop は、SIGKILL シグナルと猶予期間を使用してプロセスを強制終了する前に、まず SIGTERM シグナルを送信します。 Docker kill が SIGKILL を送信すると、プロセスは直ちに終了します。

  • 実行中のすべてのコンテナを停止します。 退出していないコンテナを停止するため。これは、Docker イメージで使用されているコマンドが実行されたままになっている場合に発生する可能性があります。コマンドを終了する必要があります。これにより、コンテナーが停止されます。コマンドを停止してコンテナーを終了していない場合にコンテナーを停止するには、次のコマンドを実行する必要があります。
docker stop $(docker ps -aq)>
  • コンテナを削除します。 コンテナーが停止している場合は、次のコマンドを使用してコンテナーを削除できます。
docker rm>
    コンテナの強制削除: 以下のコマンドを使用すると、実行中のコンテナを停止せずに強制的に削除できます。
docker rm -f>
コンテナを停止する

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

Docker マシンからすべてのコンテナーを削除するには、すべてのコンテナーの ID を取得する必要があります。コマンドを使用してコンテナの ID を簡単に取得できます。 docker ps -aq 次に、 docker rm コマンドを使用して、docker-machine 内のすべてのコンテナーを削除できます。

docker rm $(docker ps -aq)>
すべてのコンテナを取り外します

停止したコンテナをすべて削除する

停止または終了したすべてのコンテナを削除するには、ps コマンドの引数でフィルタを使用します。コンテナが停止していない場合、コンテナを直接削除することはできません。 docker の ps コマンドに -f 引数を使用することで、終了していないコンテナまたは実行中のコンテナを停止できます。 -f または –filter オプションは、status=exited、status=running、name などのフィルタを受け取ります。要件に応じて特定のコンテナをフィルタリングして停止できます。

docker rm $(docker ps -aq --filter status='exited')>

実行中のコンテナーをフィルターで除外した後、stop コマンドを使用してコンテナーを停止し、 -q を付けて、それらのコンテナーに関連付けられた数値 ID を沈黙させます。

docker stop $(docker ps --filter status=running -q)>

これによりすべてのコンテナが停止するため、Docker マシンからコンテナを削除できるようになります。ここで停止しているコンテナをフィルタリングして、ステータスが終了しているコンテナのみを削除することもできます。

docker rm $(docker ps --filter status=exited -q)>
停止したコンテナを削除します。
  • 以下のコマンドは、既存の状態にあるすべてのコンテナを削除しました。つまり、コンテナが停止したということです。
docker container prune>
Docker コンテナ Prune