1. ホーム
  2. docker

[解決済み] すべてのdockerボリュームを削除するには?

2022-09-16 03:24:01

質問

もし私が docker volume ls とすると、私のボリューム一覧はこのようになります。

DRIVER              VOLUME NAME
local               305eda2bfd9618266093921031e6e341cf3811f2ad2b75dd7af5376d037a566a
local               226197f60c92df08a7a5643f5e94b37947c56bdd4b532d4ee10d4cf21b27b319
...
...
local               209efa69f1679224ab6b2e7dc0d9ec204e3628a1635fa3410c44a4af3056c301

で、すべてのボリュームを一度に削除したいのです。どうすればよいのでしょうか?

どのように解決するのですか?

未使用のデータ(コンテナのないボリュームも含む)をすべて削除する公式コマンドは、docker 1.13で

docker system prune  

ボリュームだけに限定したい場合。 未使用のボリュームのみを削除する :

docker volume prune

また docker image prune , docker container prune など。

詳しくは"でご覧ください。 未使用のDockerオブジェクトをプルーンする "です。

参照 コミット 86de7c0 PR 26108 .

で実際に見ることができます。 ドッカーで遊ぶ :

/ # docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
1296a5e47ef3        hello-world         "/hello"            7 seconds ago       Exited (0) 6 seconds ago                       prickly_poincare

/ # docker system  prune
WARNING! This will remove:
        - all stopped containers
        - all volumes not used by at least one container
        - all networks not used by at least one container
        - all dangling images
Are you sure you want to continue? [y/N] y
Deleted Containers:
1296a5e47ef3ab021458c92ad711ad03c7f19dc52f0e353f56f062201aa03a35


現在(Docker 1.13以前)のボリューム管理の方法は、以下のように導入されました。 PR 14242 で導入され docker volume コマンドで導入されました。 という文書があります。 をそのコメントで を2015年7月に発表しています。

docker volume rm $(docker volume ls -q --filter dangling=true)