Dockerイメージが削除できないことで困っていませんか?
本記事では、ケース別に難しいDockerイメージをどう処理すればよいか、その具体的な方法を解説します。
安全かつ確実にイメージを管理し、よりクリーンなDocker環境を実現するための手順を、ここで紹介します。
目次
とりあえず絶対に解決できる強制的なimageの削除方法
最も確実な方法は、-f
オプションを用いてイメージを強制的に削除することです。
これは、通常の方法で削除できない場合にお試しください。
docker image rm -f [イメージ名]
例:ubuntu
イメージを強制削除する場合
docker image rm -f ubuntu
余裕があるときは次の基本的な削除方法や、状況を確認しながら削除する方法をお試しください。
基本的なimageの削除方法
次に、基本的な削除方法を紹介します。これは、イメージが使用中でない場合に適しています。
イメージのリスト表示して確認してみる
docker images
イメージを指定して削除する
docker image rm [イメージ名]
例:ubuntu
イメージを削除する場合
docker image rm ubuntu
イメージ名以外でも『IMAGE ID』でも指定して削除可能です。
コンテナの状況を確認して安全に削除する方法
イメージを利用しているコンテナが存在すると通常削除方法ではエラーがでます。
1.利用コンテナの確認 → 2.コンテナの停止 → 3.コンテナの削除 → 4.イメージの削除
の手順を踏み、イメージを削除しましょう。
使用しているイメージを特定する方法
特定のイメージを使用しているコンテナを確認するには、以下の手順を実行します。
1. 全てのコンテナを表示する
docker ps -a
1-1. 特定のイメージをフィルタリングする
特定のイメージ名をフィルタリングするには、出力結果を grep コマンドで絞り込みます。
例えば、ubuntu イメージを使用しているコンテナを見つけるには、以下のようにします。
docker ps -a | grep ubuntu
1-2. コンテナの詳細情報を取得する
コンテナ名にイメージ名が含まれているとは限らないので、上記のフィルタリングで検出できない場合もあります。
その場合は、docker inspect
コマンドを使い、特定のコンテナの詳細情報を取得し使用しているイメージを一つずつ確認します。
docker inspect [コンテナIDまたは名前]
2. コンテナを特定して停止する
削除したいイメージを使用しているコンテナを特定したら停止します。
停止には docker stop
コマンドを使用します。
docker stop [コンテナ名またはID]
3. コンテナの削除する
docker rm [コンテナ名またはID]
4. イメージの削除する
関連するコンテナをすべて削除した後、イメージを安全に削除できます。
docker image rm [イメージ名]
補足:docker rmi
コマンド
docker rmi
コマンドも、イメージを削除する際に利用可能です。
このコマンドは docker image rm
の短縮形で、機能的には同じです。
docker rmi [イメージ名]
まとめ
この記事では、Dockerイメージの削除方法について、さきに強制削除の方法、そして安全な削除方法までを詳細に解説しました。
イメージが削除できない場合は、使用中のイメージに関連するコンテナが存在することが原因だと思いますので、状況を確認してまずは焦らずコンテナの停止、削除からはじめ、その後イメージの削除を実施しましょう。
それではまた。