完成

您可以使用该命令为 Docker CLI 生成 shell 完成脚本。补全脚本为您提供 命令、标志和 Docker 对象(例如容器和卷名称) 您在终端中输入时点击。docker completion<Tab>

您可以为以下 shell 生成完成脚本:

重击

要使用 Bash 完成 Docker CLI,您首先需要安装包含许多 shell 的 Bash 函数的软件包 完成。bash-completion

# Install using APT:
sudo apt install bash-completion

# Install using Homebrew (Bash version 4 or later):
brew install bash-completion@2
# Homebrew install for older versions of Bash:
brew install bash-completion

# With pacman:
sudo pacman -S bash-completion

安装 后,在 shell 中获取脚本 配置文件(在本例中为 ):bash-completion.bashrc

# On Linux:
cat <<EOT >> ~/.bashrc
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi
EOT

# On macOS / with Homebrew:
cat <<EOT >> ~/.bash_profile
[[ -r "$(brew --prefix)/etc/profile.d/bash_completion.sh" ]] && . "$(brew --prefix)/etc/profile.d/bash_completion.sh"
EOT

并重新加载你的 shell 配置:

$ source ~/.bashrc

现在,您可以使用以下命令生成 Bash 完成脚本:docker completion

$ mkdir -p ~/.local/share/bash-completion/completions
$ docker completion bash > ~/.local/share/bash-completion/completions/docker

ZSH

Zsh 补全系统可以处理所有事情,只要可以使用 .FPATH

如果您使用 Oh My Zsh,则可以通过将完成脚本存储在目录中来安装完成而无需修改。~/.zshrc~/.oh-my-zsh/completions

$ mkdir -p ~/.oh-my-zsh/completions
$ docker completion zsh > ~/.oh-my-zsh/completions/_docker

如果您不使用 Oh My Zsh,请将补全脚本存储在 您选择的,并将目录添加到 .FPATH.zshrc

$ mkdir -p ~/.docker/completions
$ docker completion zsh > ~/.docker/completions/_docker
$ cat <<"EOT" >> ~/.zshrc
FPATH="$HOME/.docker/completions:$FPATH"
autoload -Uz compinit
compinit
EOT

Fish Shell 本身就支持 Completion 系统。 要激活 Docker 命令的完成,请将完成脚本复制或符号链接到您的 fish shell 目录:completions/

$ mkdir -p ~/.config/fish/completions
$ docker completion fish > ~/.config/fish/completions/docker.fish