Skip to content

Instantly share code, notes, and snippets.

@drhuffman12
Last active August 18, 2017 01:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save drhuffman12/a3b52a9dc5e8e0dd3cd437316199f2df to your computer and use it in GitHub Desktop.
Save drhuffman12/a3b52a9dc5e8e0dd3cd437316199f2df to your computer and use it in GitHub Desktop.
Clean Docker containers and images based on given filter text
#!/usr/bin/env sh
filter="$1"
if [ -z "$1" ]
then
echo "Clean Docker containers and images based on given filter text."
echo
echo " Error: No filter argument supplied."
echo " Usage: `basename "$0"` <filter>"
echo " e.g. `basename "$0"` my_image_or_container_name"
echo
else
echo "Cleaning Docker containers and images using filter: '$filter'"
docker ps -a | awk '{ print $1,$2,$NF }' | grep "$filter" | awk '{print $1 }' | xargs -I {} docker stop {}
docker ps -a | awk '{ print $1,$2,$NF }' | grep "$filter" | awk '{print $1 }' | xargs -I {} docker rm {}
docker images -a | awk '{ print $1,$2,$3 }' | grep "$filter" | awk '{print $3 }' | xargs -I {} docker rmi -f {}
echo
echo " Done."
echo
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment