全消しするオプションも含めたコマンドを次に記載します。
docker system prune -a -f --volumes
環境
- Docker
- Docker version 20.10.13, build a224086
解説
- Docker version 20.10.13, build a224086
docker system prune
だとイメージ、コンテナ、ネットワークを削除します。ただし、イメージに関しては「参照されていないイメージ」(dangling image)のみを削除します。「使用していないイメージ」ではないため、docker images
を実行すると残っていることがわかります。「使用していないImage」も含めて削除するためには-a
オプションが必要です。
-f
は-force
の短縮形で、削除確認を無視できます。無くても問題ありません。
--volumes
オプションで指定するとボリュームも削除します。こちらも必要に応じて追加してください。
終わりに
もともと、docker system prune
というコマンドで「参照されていない」Imageを削除することは知っていました。ただ、「使用していない」Imageを削除できていなかったため、dcoker rmi {コンテナID}
で削除していました。
# こんなコマンドで一括削除していました docker rmi $(docker images -q)
公式ヘルプを読めば簡単にわかったのですが、「使用していないイメージも削除する」オプションにたどり着くのに時間がかかったので、メモとしてブログにします。