How to delete a docker image?

My project includes a Dockerfile to build an image. I've made modifications to that Dockerfile and want to see if it works. So i closed my program and listed all docker images in powershell using docker image ls -a. I deletetd all unused images using docker rmi -f $(docker images -a -q) and docker image prune -a.

But my image keeps not getting deleted, but simply 'untagged':

Untagged: my_image:latest
Untagged: my_image@sha256:16eb92a476be0...

All containers are stopped and deleted before trying to remove the image.
When i restart my application to build a new image, the old one keeps getting used:

> docker image ls -a
REPOSITORY TAG IMAGE ID CREATED
/my_image latest 0d79904a74b0 2 months ago

How do i actually physically remove the old image so my application can build a new one?

3

1 Answer

At first, you need to delete/stop the running container that is using your image(which one you want to remove).

  • docker ps -a: To see all the running containers in your machine.
  • docker stop <container_id>: To stop a running container.
  • docker rm <container_id>: To remove/delete a docker container(only if it stopped).
  • docker image ls: To see the list of all the available images with their tag, image id, creation time and size.
  • docker rmi <image_id>: To delete a specific image.
  • docker rmi -f <image_id>: To delete a docker image forcefully
  • docker rm -f (docker ps -a | awk '{print$1}'): To delete all the docker container available in your machine
  • docker image rm <image_name>: To delete a specific image

To remove the image, you have to remove/stop all the containers which are using it.

  • docker system prune -a: To clean the docker environment, removing all the containers and images.
5

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like