docker.plugin.zsh
2378 bytes
1alias dbl='docker build'
2alias dcin='docker container inspect'
3alias dcls='docker container ls'
4alias dclsa='docker container ls -a'
5alias dcprune='docker container prune'
6alias dib='docker image build'
7alias dii='docker image inspect'
8alias dils='docker image ls'
9alias dipu='docker image push'
10alias dipru='docker image prune -a'
11alias dirm='docker image rm'
12alias dit='docker image tag'
13alias dlo='docker container logs'
14alias dnc='docker network create'
15alias dncn='docker network connect'
16alias dndcn='docker network disconnect'
17alias dni='docker network inspect'
18alias dnls='docker network ls'
19alias dnprune='docker network prune'
20alias dnrm='docker network rm'
21alias dpo='docker container port'
22alias dps='docker ps'
23alias dpsa='docker ps -a'
24alias dpu='docker pull'
25alias dr='docker container run'
26alias drit='docker container run -it'
27alias drm='docker container rm'
28alias 'drm!'='docker container rm -f'
29alias dsprune='docker system prune'
30alias dst='docker container start'
31alias drs='docker container restart'
32alias dsta='docker stop $(docker ps -q)'
33alias dstp='docker container stop'
34alias dsts='docker stats'
35alias dtop='docker top'
36alias dvi='docker volume inspect'
37alias dvls='docker volume ls'
38alias dvprune='docker volume prune'
39alias dxc='docker container exec'
40alias dxcit='docker container exec -it'
41
42if (( ! $+commands[docker] )); then
43 return
44fi
45
46# Standardized $0 handling
47# https://zdharma-continuum.github.io/Zsh-100-Commits-Club/Zsh-Plugin-Standard.html
480="${${ZERO:-${0:#$ZSH_ARGZERO}}:-${(%):-%N}}"
490="${${(M)0:#/*}:-$PWD/$0}"
50
51# If the completion file doesn't exist yet, we need to autoload it and
52# bind it to `docker`. Otherwise, compinit will have already done that.
53if [[ ! -f "$ZSH_CACHE_DIR/completions/_docker" ]]; then
54 typeset -g -A _comps
55 autoload -Uz _docker
56 _comps[docker]=_docker
57fi
58
59{
60 # `docker completion` is only available from 23.0.0 on
61 # docker version returns `Docker version 24.0.2, build cb74dfcd85`
62 # with `s:,:` remove the comma after the version, and select third word of it
63 if zstyle -t ':omz:plugins:docker' legacy-completion || \
64 ! is-at-least 23.0.0 ${${(s:,:z)"$(command docker --version)"}[3]}; then
65 command cp "${0:h}/completions/_docker" "$ZSH_CACHE_DIR/completions/_docker"
66 else
67 command docker completion zsh | tee "$ZSH_CACHE_DIR/completions/_docker" > /dev/null
68 fi
69} &|