停止したDockerコンテナのみを一覧表示する


191

Dockerを使用すると、実行中のコンテナ、または停止したコンテナを含むすべてのコンテナを一覧表示できます。

これは次の方法で実行できます。

$ docker ps # To list running containers

または

$ docker ps -a # To list running and stopped containers

停止したコンテナのみを一覧表示する方法はありますか?

回答:


310

停止したコンテナのみを使用してリストできます。

docker ps --filter "status=exited"

または

docker ps -f "status=exited"

4
また、grepたとえばそれらでフィルターすることもできますdocker ps -a | grep Exited
starikovs

23
クール、停止したコンテナを削除できるようになりましたdocker rm $(docker ps --filter "status=exited" -q)
czerasz

2
bashプロファイルにエイリアスを作成し、より短いキーワード/コマンドを使用して停止したコンテナーをクリーンアップすることをお
勧め

21
「ドッカーコンテナープルーン」は1.25から使用できます。停止したコンテナーを削除すると思います
ポール、

38

典型的なコマンドは次のとおりです。

docker container ls -f 'status=exited'

ただし、表示される可能性がある非実行ステータスは1つだけです。以下は、考えられるすべてのステータスのリストです。

  • 作成した
  • 再起動
  • ランニング
  • 取り除く
  • 一時停止しました
  • 出た
  • デッド

ステータスに複数のフィルターを渡すことで、複数のステータスをフィルターできます。

docker container ls -f 'status=exited' -f 'status=dead' -f 'status=created'

これを自動クリーンアップスクリプトと統合する場合は、bash構文を使用して1つのコマンドを別のコマンドにチェーンし、コンテナーIDのみをで出力-qし、終了コードフィルターで正常に終了したコンテナーのみに制限することもできます。

docker container rm $(docker container ls -q -f 'status=exited' -f 'exited=0')

使用できるフィルターの詳細については、Dockerのドキュメントを参照してください:https : //docs.docker.com/engine/reference/commandline/ps/#filtering


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.