Docker removing unused images and container

Share on facebook
Share on google
Share on twitter
Share on linkedin

While learning docker and following through dozens of tutorials around the web, the amount of new images I downloaded and containers I created can easily be above the 50-60 scale…

The problem with that, is that most of them are not used!
most of them have the annoying “” in the image name, and all the containers are stopped.

I decided to start clearing stuff, so even though I would be happy to go one by one… I decided to batch the process, and here the 2 tiny commands that could help you as well.

remove all stopped containers:

docker rm $(docker ps -a | grep -v Up | awk '{print $1}')

how it works?

  • ” docker ps -a ” – lists all containers
  • ” grep -v Up ” select only the rows where the container is not “Up”
  • ” awk ‘{print $1}’ ” take only the container id
  • now after we took all the stopped container ids we simply remove them with the docker command.

remove all images with :

docker rmi $(docker images | grep "<none>" | awk '{print $3}')

how it works?

  • ” docker images ” – list all images
  • ” grep “” ” – take only the ones that contain
  • ” awk ‘{print $3}’ ” – grab their ids
  • now remove them with the docker command