1. ホーム
  2. docker

[解決済み] 古いDockerコンテナを削除する方法

2022-03-17 12:23:33

質問

この質問は、次のことに関連しています。 過剰な、実行されていないDockerコンテナについて心配する必要がありますか? .

古いコンテナを削除する方法について悩んでいます。その docker rm 3e552code34a は1つだけ削除することができますが、私はすでにたくさん持っています。 docker rm --help は、選択オプション(すべてとか、画像名でとか)を与えません。

もしかしたら、これらのコンテナが保存されているディレクトリがあり、そこで手動で簡単に削除することができるかもしれません。

解決方法は?

以来 Docker 1.13.x を使用することができます。 Dockerコンテナの剪定 :

docker container prune

これは停止したコンテナをすべて削除するもので、すべてのプラットフォームで同じように動作するはずです。

また Docker システムのプルーン :

docker system prune

は、すべての未使用のコンテナ、ネットワーク、イメージ (ぶら下がりと参照なしの両方)、およびオプションでボリュームを、1 つのコマンドでクリーンアップします。


古いバージョンのDockerでは、Dockerコマンドと他のUnixコマンドを組み合わせて、必要なものを手に入れることができます。以下は、数週間前の古いコンテナをクリーンアップする方法の例です。

$ docker ps --filter "status=exited" | grep 'weeks ago' | awk '{print $1}' | xargs --no-run-if-empty docker rm

この例では、以下のものを使用しています。 https://twitter.com/jpetazzo/status/347431091415703552 .