web-dev-qa-db-ja.com

停止したコンテナが画像を使用しています

私はこのコマンドでドッカーコンテナを削除しようとしています:

docker rmi <Image-Id>

明らかに、私はImage-Idを、使用するIDに置き換えました。

docker images

しかし、次のエラーが表示されます。

Error response from daemon: conflict: unable to delete <Image-ID> (must be forced) - image is being used by stopped container xxxxxxxxxxx
25
Mehrdad Babaki

--force , -fを使用して画像を強制的に削除することもできます

-fフラグを使用して画像の短いまたは長いIDを指定すると、このコマンドはタグを解除し、指定されたIDに一致するすべての画像を削除します。

  docker rmi -f <image_id> 
40
Adiii

docker rmで停止したコンテナを削除する必要があります。その後、docker rmiで使用するイメージを削除できます。

16
David Maze

また、ロックの原因となっているコンテナーを停止したこともあります。最初にこれらを削除します:

docker rm  $(docker ps -q -a)

ここでは、IDのみでdockerプロセスをリストし、それらを削除しています。ただし、docker rmは停止したコンテナーのみを削除します。

次に戻って、次を使用して画像を削除します。

docker image rm <image_id>
3
Angus

Dockerfileを変更した場合、およびdocker composeを使用している場合は、docker-composeオプションを指定して--buildを実行するだけでイメージを再構築できます。

0
aitbahaa