Docker: Remove All Images and Containers

By  on  
Docker

I've moved to a new project at Mozilla which uses a much different stack than I'm used to; suddenly I'm thrust into a world of Mercurial, Docker, and a few other technologies I'm not accustomed to.  You know what that leads to:  foul language, frustration, booze, and...lots of starting over.  Some hate starting over but wiping the slate clean provides me a bit of ease, knowing that I'm not compounding the problem by trying to patch a fix of a shim.

Starting over in this case means wiping clean my Docker images and containers, just to make sure there are no conflicts or duplicates.  The following commands delete all containers and images:

# Delete every Docker containers
# Must be run first because images are attached to containers
docker rm -f $(docker ps -a -q)

# Delete every Docker image
docker rmi -f $(docker images -q)

Of course you don't want to do this if you're using Docker across multiple projects -- you'll find yourself in a world of hurt if you break your other images and containers.

There you have it -- a clean Docker slate in one pass!

Recent Features

  • By
    39 Shirts – Leaving Mozilla

    In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell...

  • By
    Create a CSS Flipping Animation

    CSS animations are a lot of fun; the beauty of them is that through many simple properties, you can create anything from an elegant fade in to a WTF-Pixar-would-be-proud effect. One CSS effect somewhere in between is the CSS flip effect, whereby there's...

Incredible Demos

  • By
    WebSocket and Socket.IO

    My favorite web technology is quickly becoming the WebSocket API. WebSocket provides a welcomed alternative to the AJAX technologies we've been making use of over the past few years. This new API provides a method to push messages from client to server efficiently...

  • By
    Animated AJAX Record Deletion Using jQuery

    I'm a huge fan of WordPress' method of individual article deletion. You click the delete link, the menu item animates red, and the item disappears. Here's how to achieve that functionality with jQuery JavaScript. The PHP - Content & Header The following snippet goes at the...

Discussion

  1. Raul Leite

    -f to brute force and resolve any conflicts between images and containers:

    docker rmi -f $ (docker images -q)
    
    docker rm -f $ (ps docker -q -a)
    
  2. #Stop all dockers

    docker stop $(ps docker -q -a)
    
  3. Ivan

    Force delete everything with attached volumes:

    docker rm -vf $(docker ps -aq)
    • Vish

      This doesn’t work.

  4. There is also new docker command, that will delete all unused images and volumes. It is less brute force and is usually save enough to put in cron on dev machine.

    docker system prune --all

    https://docs.docker.com/engine/reference/commandline/system_prune/

  5. Umesh

    How to remove all docker images in Windows 10?

  6. There is also new docker command, that will delete all unused images and volumes. It is less brute force and is usually save enough to put in cron on dev machine.

    docker system prune --all
    

    https://docs.docker.com/engine/reference/commandline/system_prune/

  7. Vish

    Perhaps you should have added how to remove all volumes too.

  8. There is also new docker command, that will delete all unused images and volumes. It is less brute force and is usually save enough to put in cron on dev machine. Ok!

  9. pavnesh yadav

    try this command

    docker system prune --all

    – all stopped containers
    – all networks not used by at least one container
    – all images without at least one container associated to them
    – all build cache

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!