Skip to content

Instantly share code, notes, and snippets.

@sysboss
Created April 27, 2017 12:47
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sysboss/6214f6adf50800d153f47253cc29c4e1 to your computer and use it in GitHub Desktop.
Save sysboss/6214f6adf50800d153f47253cc29c4e1 to your computer and use it in GitHub Desktop.
Clean old Docker Images
#!/bin/bash
#
# Keeps latest X tags of every Docker Image
KEEP_IMAGES_BACK=2
echo Retrieving local images available
# get all images
IMAGES=$(docker images | sort | awk '{print $1}' | uniq | grep -v "<none>")
echo Cleaning old tags...
for i in $IMAGES; do
COUNT=$(docker images | grep "$i " | wc -l)
if [[ $COUNT -ge 3 ]]; then
echo IMAGE $i has $COUNT tags
docker images | grep "$i " | tail -$(($COUNT-$KEEP_IMAGES_BACK)) | awk '{print $1 ":" $2}' | xargs docker rmi
fi
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment