LoginSignup
318
229

More than 5 years have passed since last update.

Dockerで none なイメージを一括で削除するワンライナー

Last updated at Posted at 2015-04-17

docker pullを何回も叩いていると、ローカルのイメージが<none>になってしまうことがあります。

$ docker images
REPOSITORY             TAG                          IMAGE ID            CREATED             VIRTUAL SIZE
node                   latest                       6d123ea65021        2 weeks ago         706.5 MB
centos                 latest                       2b8d6139a545        2 weeks ago         212.1 MB
postgres               latest                       dcce0da1c311        2 weeks ago         213.9 MB
mysql                  latest                       97454fa6c9d3        2 weeks ago         282.8 MB
<none>                 <none>                       9552b2f0723b        2 weeks ago         255.7 MB
debian                 latest                       1265e16d0c28        2 weeks ago         84.98 MB

<none>になる条件は、新しいイメージが既存のタグを再利用したときにそうなるようです。
古い方のイメージがタグを剥奪されるみたいな感じ。

<none>イメージを一括削除する

-f(フィルタ)オプションを使うと イメージを抽出することができます。

docker images -f "dangling=true"

この出力を使ってイメージ一括削除すればOKです。

docker rmi $(docker images -f "dangling=true" -q)

追記

v1.25以降は、下記のようにもっと簡単にできます。
https://docs.docker.com/engine/reference/commandline/image_prune/

docker image prune
318
229
2

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
318
229