mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-30 22:34:29 +08:00
93 lines
5.5 KiB
Fish
93 lines
5.5 KiB
Fish
#
|
|
# Completions for the docker command
|
|
#
|
|
|
|
#
|
|
# Functions
|
|
#
|
|
|
|
function __fish_docker_using_command
|
|
set cmd (commandline -opc)
|
|
if [ (count $cmd) -gt 1 ]
|
|
if [ $argv[1] = $cmd[2] ]
|
|
return 0
|
|
end
|
|
end
|
|
return 1
|
|
end
|
|
|
|
function __fish_docker_all_containers --description "Show all containers"
|
|
command docker ps -q -a
|
|
end
|
|
|
|
|
|
function __fish_docker_start_containers --description "Show the running containers"
|
|
command docker ps -q
|
|
end
|
|
|
|
function __fish_docker_stop_containers --description "Show the exited containers"
|
|
command docker ps -a | grep "Exit" | awk '{ print $1 }'
|
|
end
|
|
|
|
# All docker commands
|
|
complete -c docker -n '__fish_use_subcommand' -xa attach --description "Attach to a running container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa build --description "Build a container from a Dockerfile"
|
|
complete -c docker -n '__fish_use_subcommand' -xa commit --description "Create a new image from a container's changes"
|
|
complete -c docker -n '__fish_use_subcommand' -xa cp --description "Copy files/folders from the containers filesystem to the host path"
|
|
complete -c docker -n '__fish_use_subcommand' -xa diff --description "Inspect changes on a container's filesystem"
|
|
complete -c docker -n '__fish_use_subcommand' -xa events --description "Get real time events from the server"
|
|
complete -c docker -n '__fish_use_subcommand' -xa export --description "Stream the contents of a container as a tar archive"
|
|
complete -c docker -n '__fish_use_subcommand' -xa history --description "Show the history of an image"
|
|
complete -c docker -n '__fish_use_subcommand' -xa images --description "List images"
|
|
complete -c docker -n '__fish_use_subcommand' -xa import --description "Create a new filesystem image from the contents of a tarball"
|
|
complete -c docker -n '__fish_use_subcommand' -xa info --description "Display system-wide information"
|
|
complete -c docker -n '__fish_use_subcommand' -xa insert --description "Insert a file in an image"
|
|
complete -c docker -n '__fish_use_subcommand' -xa inspect --description "Return low-level information on a container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa kill --description "Kill a running container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa load --description "Load an image from a tar archive"
|
|
complete -c docker -n '__fish_use_subcommand' -xa login --description "Register or Login to the docker registry server"
|
|
complete -c docker -n '__fish_use_subcommand' -xa logs --description "Fetch the logs of a container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa port --description "Lookup the public-facing port which is NAT-ed to PRIVATE_PORT"
|
|
complete -c docker -n '__fish_use_subcommand' -xa ps --description "List containers"
|
|
complete -c docker -n '__fish_use_subcommand' -xa pull --description "Pull an image or a repository from the docker registry server"
|
|
complete -c docker -n '__fish_use_subcommand' -xa push --description "Push an image or a repository to the docker registry server"
|
|
complete -c docker -n '__fish_use_subcommand' -xa restart --description "Restart a running container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa rm --description "Remove one or more containers"
|
|
complete -c docker -n '__fish_use_subcommand' -xa rmi --description "Remove one or more images"
|
|
complete -c docker -n '__fish_use_subcommand' -xa run --description "Run a command in a new container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa save --description "Save an image to a tar archive"
|
|
complete -c docker -n '__fish_use_subcommand' -xa search --description "Search for an image in the docker index"
|
|
complete -c docker -n '__fish_use_subcommand' -xa start --description "Start a stopped container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa stop --description "Stop a running container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa tag --description "Tag an image into a repository"
|
|
complete -c docker -n '__fish_use_subcommand' -xa top --description "Lookup the running processes of a container"
|
|
complete -c docker -n '__fish_use_subcommand' -xa version --description "Show the docker version information"
|
|
complete -c docker -n '__fish_use_subcommand' -xa wait --description "Block until a container stops, then print its exit code"
|
|
|
|
#
|
|
# docker ps
|
|
#
|
|
complete -c docker -f -n '__fish_docker_using_command ps' -a '(__fish_docker_all_containers)' --description "Docker container"
|
|
complete -c docker -s a -l all --description "Show all containers. Only running containers are shown by default."
|
|
complete -c docker -s q -l quiet==false --description "Only display numeric IDs"
|
|
complete -c docker -s s -l size=false --description "Display sizes"
|
|
complete -c docker -s n --description "Show n last created containers, include non-running ones. [-1]"
|
|
complete -c docker -l before-id="" --description "Show only container created before Id, include non-running ones."
|
|
complete -c docker -l no-trunc=false --description "Show all containers. Only running containers are shown by default."
|
|
complete -c docker -l since-id="" --description "Show only containers created since Id, include non-running ones."
|
|
|
|
#
|
|
# docker start
|
|
#
|
|
complete -c docker -f -n '__fish_docker_using_command start' -a '(__fish_docker_stop_containers)' --description "Stopped container"
|
|
|
|
#
|
|
# docker stop
|
|
#
|
|
complete -c docker -f -n '__fish_docker_using_command stop' -a '(__fish_docker_start_containers)' --description "Container running"
|
|
|
|
#
|
|
# docker restart
|
|
#
|
|
complete -c docker -f -n '__fish_docker_using_command restart' -a '(__fish_docker_all_containers)' --description "Docker container"
|