公開されているDockerイメージを試したりしているといつの間にか不要なイメージでディスク容量が圧迫されてしまう。
不要なイメージ、コンテナ、ネットワーク、ボリュームを一括削除する方法をまとめる。

現在使用中のディスクサイズの確認

以下のコマンドで現在使用中のディスクサイズを確認できる。

$ docker system df
TYPE            TOTAL     ACTIVE    SIZE      RECLAIMABLE
Images          32        4         9.202GB   8.141GB (88%)
Containers      4         1         157MB     157MB (99%)
Local Volumes   1         1         43.2MB    0B (0%)
Build Cache     102       0         239.5MB   239.5MB

利用していないイメージ、コンテナ、ネットワークを削除する

以下のコマンドで利用していないイメージ、コンテナ、ネットワークを削除できる。

$ docker system prune
WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all dangling images
  - all dangling build cache

Are you sure you want to continue? [y/N]

yを入力すると停止中のコンテナ、利用していないネットワーク、利用していないイメージ、利用していないビルドキャッシュが削除される。

コマンドの出力結果の最後に空いたディスクサイズが表示される。

.
.
.
Total reclaimed space: 1.779GB

利用していないボリュームも削除する

--volumesオプションを付けると利用していないボリュームも削除できる。

$ docker system prune --volumes