#!/bin/bash
ME=$(basename $0)
function ask {
read -p "Are you sure? [Y/n]" -n 1 -r
if [[ -z $REPLY ]] || [[ $REPLY =~ ^[Yy]$ ]]; then
echo "You sure."
else
exit 2
fi
}
function rm_image {
if [[ -z "$1" ]]; then
echo "Patten is required"
usage
exit 3
fi
images=$(docker images | egrep -i "$1" | awk '{
if ($1 == "<none>" || $2 == "<none>")
print $3
else
print $1":"$2}')
if [[ -n $images ]]; then
echo "Deleting ${images}"
ask
docker rmi -f $images
else
echo "No found any images contains: $1"
exit 1
fi
}
function rm_container {
if [[ -z "$1" ]]; then
echo "Patten is required"
usage
exit 3
fi
containers=$(docker ps -a | egrep -i "$1" | awk '{ print $NF }')
if [[ -n ${containers} ]]; then
echo "deleting ${containers}"
ask
docker rm -f ${containers}
else
echo "Not found any container contains: $1"
exit 1
fi
}
function usage {
cat << EOF
Usage:
$ME [rmi|rm] <pattern>
EOF
}
case $1 in
rmi)
rm_image $2
;;
rm)
rm_container $2
;;
*)
usage
esac