1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

お題は不問!Qiita Engineer Festa 2024で記事投稿!
Qiita Engineer Festa20242024年7月17日まで開催中!

Dockerコマンドでコンテナ、イメージ、ボリューム、ネットワーク、キャッシュをまとめて削除する

Posted at

Dockerを用いた開発をすると多くのイメージやコンテナ、ボリューム、ネットワーク、キャッシュが残りがちです。

これらを削除するコマンドたちを紹介します。

コンテナの削除

コンテナの削除は docker rm <container_id> で行う。

引数には複数のコンテナIDを指定することができ、全てのコンテナを削除するには docker rm $(docker ps -a -q) とする。

イメージの削除

一方でイメージの削除は docker rmi <image_id> で行う。

こちらも引数には複数のイメージIDを指定することができ、全てのイメージを削除するには docker rmi $(docker images -q) とする。

ボリュームの削除

ボリュームの削除は docker volume rm <volume_name> で行う。

ほぼ同じことを書いているが、引数には複数のボリューム名を指定することができ、全てのボリュームを削除するには docker volume rm $(docker volume ls -q) とする。

以上のようにDockerの各オブジェクトに対して削除コマンドが用意されている。

が使っては破棄が可能なためこれらのオブジェクトがどんどん溜まっていってはいないだろうか?

(筆者は溜まっている)

そのためまとめて削除するコマンドを紹介する。

prune

docker system prune で全てのコンテナ、イメージ、ボリューム、ネットワークを削除することができる。

コマンドを実行すると以下のように確認を求められる。

$ docker system prune

WARNING! This will remove:
        - all stopped containers
        - all networks not used by at least one container
        - all dangling images
        - all build cache
Are you sure you want to continue? [y/N]

ここでは停止中のコンテナ、コンテナに紐づいていないネットワーク、未使用のイメージ、ビルドキャッシュを削除するけど大丈夫?と聞かれる。

ボリュームは上のコマンドでは削除されないので、ボリュームも含めて削除したい場合は docker system prune --volumes とする。

$ docker system prune --volumes

        - all stopped containers
        - all networks not used by at least one container
        - all volumes not used by at least one container
        - all dangling images
        - all build cache
Are you sure you want to continue? [y/N]

ボリュームを含めてまとめて削除ができる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?