ITメモベース

Python・開発環境まわりの「つまずきポイント」を整理するITメモ


Dockerでイメージが削除できないときの対処法(Mac)


Dockerを使っていると、
不要になったイメージを削除しようとして次のようなエラーが出ることがあります。

Error response from daemon: conflict: unable to delete

何度 docker rmi を実行しても削除できず、
「なぜ消せないのか分からない」という状態になりがちです。

この記事では、Dockerでイメージが削除できないときの主な原因と、順番に試すべき対処法を、Mac環境向けに解説します。

※ 本記事は Mac + Docker Desktop を前提に説明します。

この記事でわかること

  • Dockerイメージが削除できない理由
  • 使用中・依存関係の考え方
  • 安全に削除する手順
  • 強制削除の注意点

Dockerイメージが削除できない主な理由

Dockerイメージが削除できない場合、
ほとんどは 「どこかで使われている」状態です。

Dockerでは、

  • コンテナ
  • 他のイメージ
  • キャッシュ

との関係が切れていないと削除できません。

原因① 使用中のコンテナが存在する

最も多い原因です。

エラー例

conflict: unable to delete image

確認方法

docker ps -a

削除したいイメージを使っているコンテナがないか確認します。

対処法

対象コンテナを停止・削除します。

docker stop コンテナID
docker rm コンテナID

その後、再度イメージを削除します。

docker rmi イメージID

原因② 停止中のコンテナが残っている

docker ps では表示されなくても、
停止中のコンテナが残っていることがあります。

確認方法

docker ps -a

対処法

不要なコンテナを削除します。

docker rm コンテナID

原因③ 他のイメージが依存している

別のイメージが、
削除対象イメージをベースとして使っている場合も削除できません。

確認の考え方

  • Dockerfileで FROM に使われていないか
  • 派生イメージが残っていないか

対処法

  • 依存しているイメージを先に削除
  • または不要な派生イメージを整理

原因④ Docker Desktopのキャッシュが残っている

キャッシュや未使用リソースが原因で、
削除できないように見える場合もあります。

対処法

不要なリソースをまとめて削除します。

docker system prune

※ 実行前に削除内容を必ず確認してください。

強制削除(最終手段)

どうしても削除できない場合は、
強制削除が可能です。

docker rmi -f イメージID

注意点

  • 使用中イメージを無理に消すと環境が壊れる可能性あり
  • 依存関係を理解してから実行する

👉 基本は通常削除 → 強制削除は最後です。

よくある勘違い

  • イメージ単体ならいつでも消せる
    → ❌ コンテナが残っていると消せない
  • docker ps に出てなければ問題ない
    → ❌ 停止中コンテナが残ることがある

それでも削除できない場合のチェックリスト

  • 使用中・停止中コンテナは残っていないか
  • 派生イメージが存在していないか
  • キャッシュが溜まっていないか
  • 本当に削除してよいイメージか

まとめ

Dockerでイメージが削除できない場合、

  • コンテナが残っている
  • 依存関係が切れていない
  • キャッシュが影響している

のいずれかが原因です。

順番に確認すれば、ほとんどのケースは安全に削除できます。


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

PAGE TOP