Dockerで<none>:<none>というイメージが生成される理由

docker imagesdocker images -a とすると、REPOSITRYが <none> で、尚且TAGも <none> と表示されるイメージが生成されることがあります。

どうやらこれには2種類のケースがあるようです。

  1. Dockerイメージの中間層に位置する部分として使われているイメージが <none> と表示される
  2. 同一のDockerfileを使用してTAGの異なるDockerイメージをビルドしようとすると古いイメージが <none> と表示される

よくググって <none> になっているイメージを消そう系は、すべて2.のケースが当てはまるのだと思います。これらのイメージを dangling images と言うらしいです。

そもそも1.のケースで生成された <none> のイメージは、以下のようなエラーメッセージが表示されて削除できないかと思います。

また dangling images を消すために色々な記事で何やらややこしいコマンドを紹介されていますが、最近のバージョンでは docker image prune としてあげるだけでお掃除ができるようになっています。

Dockerについてはまだまだわからないことだらけなので、引き続き勉強していって学んだことを共有していきたいと思います。

参考記事

スポンサードリンク