Skip to content

Instantly share code, notes, and snippets.

@cherts
Created September 3, 2025 07:05
Show Gist options
  • Select an option

  • Save cherts/757da03fcbb9b8d7abb30daa9d1560b2 to your computer and use it in GitHub Desktop.

Select an option

Save cherts/757da03fcbb9b8d7abb30daa9d1560b2 to your computer and use it in GitHub Desktop.
Clean all docker components (containers, images, volumes)
#!/bin/bash
# vim: set sw=4 sts=4 et tw=80 :
_docker_list() {
echo "List of container:"
docker ps -a
echo "List of images:"
docker images ls
echo "List of volumes:"
docker volume ls
echo "List of networks:"
docker network ls
}
_docker_list
CONTAINER_CNT=$(docker ps -aq 2>/dev/null | wc -l)
if [[ ${CONTAINER_CNT} -ne 0 ]]; then
echo "Stopping all containers..."
docker stop $(docker ps -aq)
#docker ps -aq | xargs -r docker stop
fi
echo "Container prune..."
docker container prune -f
echo "Image prune..."
docker image prune -f
echo "Volume prune..."
docker volume prune -f
VOLUME_CNT=$(docker volume ls -qf dangling=true 2>/dev/null | wc -l)
if [ ${VOLUME_CNT} -ne 0 ]; then
echo "Remove all dangling volumes..."
docker volume rm $(docker volume ls -qf dangling=true)
#docker volume ls -qf dangling=true | xargs -r docker volume rm
fi
echo "System prune..."
docker system prune -a -f
_docker_list
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment