merge: work

This commit is contained in:
AngeD 2022-10-21 21:58:36 +02:00
commit 815eb821d2
2 changed files with 165 additions and 52 deletions

View File

@ -6,74 +6,75 @@ fi
alias dk='docker'
# containers
alias dkci='docker container inspect'
alias dkcls='docker container ls'
alias dkclsa='docker container ls -a'
alias dkci='docker container inspect'
alias dkcls='docker container ls'
alias dkclsa='docker container ls -a'
alias dkclsaq='docker container ls -a -q'
alias dkclsq='docker container ls -q'
alias dkcp='docker container prune'
alias dkcpf='docker container prune -f'
alias dkcrm='docker container rm'
alias dkcrmf='docker container rm -f'
alias dkcsp='docker container stop'
alias dkcst='docker container start'
alias dkex='docker container exec -i -t'
alias dklo='docker logs -f'
alias dkr='docker run -i -t'
alias dkclsq='docker container ls -q'
alias dkcp='docker container prune'
alias dkcpf='docker container prune -f'
alias dkcrm='docker container rm'
alias dkcrmf='docker container rm -f'
alias dkcsp='docker container stop'
alias dkcst='docker container start'
alias dkex='docker container exec -i -t'
alias dklo='docker logs -f'
alias dkr='docker run -i -t'
# images
alias dkb='docker build .'
alias dki='docker image'
alias dkic='docker image create'
alias dkii='docker image inspect'
alias dkils='docker image ls'
alias dkilsa='docker image ls -a'
alias dkb='docker build .'
alias dki='docker image'
alias dkic='docker image create'
alias dkii='docker image inspect'
alias dkils='docker image ls'
alias dkilsa='docker image ls -a'
alias dkilsaq='docker image ls -a -q'
alias dkilsq='docker image ls -q'
alias dkip='docker image prune'
alias dkipf='docker image prune -f'
alias dkirm='docker image rm'
alias dkirmf='docker image rm -f'
alias dkl='docker pull'
alias dkp='docker push'
alias dkt='docker tag'
alias dkilsq='docker image ls -q'
alias dkip='docker image prune'
alias dkipf='docker image prune -f'
alias dkirm='docker image rm'
alias dkirmf='docker image rm -f'
alias dkl='docker pull'
alias dkla="docker image ls | awk '{print \"docker pull \" \$1 \":\" \$2}' | $SHELL"
alias dkp='docker push'
alias dkt='docker tag'
# volumes
alias dkv='docker volume'
alias dkvc='docker volume create'
alias dkvi='docker volume inspect'
alias dkvls='docker volume ls'
alias dkv='docker volume'
alias dkvc='docker volume create'
alias dkvi='docker volume inspect'
alias dkvls='docker volume ls'
alias dkvlsq='docker volume ls -q'
alias dkvp='docker volume prune'
alias dkvpf='docker volume prune -f'
alias dkvrm='docker volume rm'
alias dkvp='docker volume prune'
alias dkvpf='docker volume prune -f'
alias dkvrm='docker volume rm'
alias dkvrmf='docker volume rm -f'
# networks
alias dkn='docker network'
alias dknc='docker network create'
alias dkni='docker network inspect'
alias dknls='docker network ls'
alias dkn='docker network'
alias dknc='docker network create'
alias dkni='docker network inspect'
alias dknls='docker network ls'
alias dknlsq='docker network ls -q'
alias dknp='docker network prune'
alias dknpf='docker network prune -f'
alias dknrm='docker network rm'
alias dknp='docker network prune'
alias dknpf='docker network prune -f'
alias dknrm='docker network rm'
alias dknrmf='docker network rm -f'
# system
alias dks='docker system'
alias dksdf='docker system df'
alias dksp='docker system prune'
alias dkspa='docker system prune -a'
alias dkspaf='docker system prune -af'
alias dkspf='docker system prune -f'
alias dkspv='docker system prune --volumes'
alias dkspva='docker system prune --volumes -a'
alias dks='docker system'
alias dksdf='docker system df'
alias dksp='docker system prune'
alias dkspa='docker system prune -a'
alias dkspaf='docker system prune -af'
alias dkspf='docker system prune -f'
alias dkspv='docker system prune --volumes'
alias dkspva='docker system prune --volumes -a'
alias dkspvaf='docker system prune --volumes -af'
alias dkspvf='docker system prune --volumes -f'
alias dkspvf='docker system prune --volumes -f'
# docker-compose
alias dc='docker-compose'
alias dcd='docker-compose down'
alias dcup='docker-compose up -d'
alias dcd='docker-compose down'
alias dcup='docker-compose up -d'
alias dcupb='docker-compose up -d --build'

112
bin/dkpurge Executable file
View File

@ -0,0 +1,112 @@
#!/bin/bash
function usage() {
cat << EOF
Usage: $0 -hcCviIna
Options:
-h Show this help and exits
-c Remove stopped containers
-C Remove all containers
-v Remove unused volumes
-i Remove unused images
-I Remove all images
-n Remove unused networks
-a All of the above, equivalent of -CvIn
EOF
exit 0
}
function add_opt() {
local RESULT
RESULT="$(unset "1")"
for o in "$@"; do
if [ "$((RESULT & o))" == 0 ]; then
RESULT="$((RESULT + o))"
fi
done
echo "$RESULT"
}
if ! docker container ls > /dev/null 2>&1 && [ "$EUID" != 0 ]; then
exec sudo -- "$0" "$@"
fi
c=1
C=2
v=4
i=8
I=16
n=32
a="$((c + C + v + I + n))"
CLEAN=0
while getopts hcCviIna o; do
case "$o" in
h)
usage
;;
c)
CLEAN="$(add_opt "$CLEAN" "$c")"
;;
C)
CLEAN="$(add_opt "$CLEAN" "$c" "$C")"
;;
v)
CLEAN="$(add_opt "$CLEAN" "$v")"
;;
i)
CLEAN="$(add_opt "$CLEAN" "$i")"
;;
I)
CLEAN="$(add_opt "$CLEAN" "$I")"
;;
n)
CLEAN="$(add_opt "$CLEAN" "$n")"
;;
a)
CLEAN="$(add_opt "$CLEAN" "$c" "$C" "$v" "$I" "$n")"
;;
*)
exit 1
;;
esac
done
if [ "$((CLEAN & C))" == "$C" ]; then # C
docker container ls -aq | xargs docker stop
fi
if [ "$((CLEAN & c))" == "$c" ]; then # C
docker container prune -f
fi
PRUNE="docker system prune -f"
case "$CLEAN" in
"$v")
docker volume prune -f
;;
"$i")
docker image prune -f
;;
"$I")
docker image prune -af
;;
"$n")
docker network prune -f
;;
"$((c + i + n))")
$PRUNE
;;
"$((c + I + n))")
$PRUNE -a
;;
"$((c + v + n))")
$PRUNE --volumes
;;
"$a")
$PRUNE -a --volumes
;;
*)
;;
esac