2014-10-01 126 views

回答

45

如果您已经homebrewbash-completioninstalled只需安装搬运工完成脚本到bash_completion.d

curl -XGET https://raw.githubusercontent.com/docker/cli/master/contrib/completion/bash/docker > $(brew --prefix)/etc/bash_completion.d/docker 

注:如果不是自制bash-completion安装有,follow these instructions你执行上面的行之前进行安装。

注意:完成取决于debian bash-completion中定义的一些功能。因此,只需按照completion/bash/docker中所述采购docker完成脚本可能无效。如果您尝试完成docker run(按TAB),您可能会收到类似__ltrim_colon_completions: command not found的错误。这意味着,您尚未安装bash完成脚本。

+0

我已经安装了'的bash完成'并将码头工人完成脚本放在适当的目录中。但是命令完成仍然不起作用(我没有收到任何错误)。我是否需要通过自制软件安装'bash'?或者它会与小牛队中的bash一起工作吗? – 2015-02-04 10:29:05

+0

对不起,由于证书错误,curl命令失败,所以docker完成文件是空的。它正在工作。 – 2015-02-04 10:37:45

+1

如果使用-GET的-XGET而不是curl命令作品: **'卷曲-XGET https://raw.githubusercontent.com/docker/docker/master/contrib/completion/bash/docker> \'brew --prefix \'/etc/bash_completion.d/docker'** – 2015-06-26 07:06:17

4

docker的自动完成不仅需要mac,也需要ubuntu/bash终端。

在Ubuntu中

curl -ksSL https://raw.githubusercontent.com/docker/docker/$(docker --version | awk 'NR==1{print $NF}')/contrib/completion/bash/docker |sudo tee /etc/bash_completion.d/docker 

建成后,将可在下次登录。

由于其在谷歌的最高结果我在这里添加了答案。

0

只是为了说: 如果你使用brewbrew install docker 将尽一切你所需要的。它包括brew link docker它安装完成情况纳入`brew --prefix`/etc/bash_completion.d/docker 同一主题,为docker-machine相同的答案,docker-compose ...等

其他(也许你正在使用泊坞测试版(新的“更天然的”泊坞窗安装包不VirtualBox的)你仍然需要手动添加,然后按照Michael's answer加上查看docker-machine,docker-compose和一些shell-helper的附加完成脚本,这些脚本在'script' from CodeCorrupt

12

中处理完成脚本附带Docker Beta。我希望他们保持最新。因此,在OS X上...

  • 安装自制的庆典完成
  • 符号链接文件

    find /Applications/Docker.app \ 
    -type f -name "*.bash-completion" \ 
    -exec ln -s "{}" "$(brew --prefix)/etc/bash_completion.d/" \; 
    
+3

随着macOS上新的本地Docker的出现,这应该成为新的最佳答案。谢谢! – Damon 2016-11-17 23:28:41

8

对我来说,障碍点是,一旦你酿造安装的bash-赛区,您必须在您添加几行。

if [ -f $(brew --prefix)/etc/bash_completion ]; then 
. $(brew --prefix)/etc/bash_completion 
fi 

来源: http://davidalger.com/development/bash-completion-on-os-x-with-brew/

因为我还没有发现任何地方一步步的文档,我做了一个快速的脚本来安装自制软件,bash-一旦你启动终端.bash_profile中加载它完成并最终完成docker的完成脚本。 https://github.com/HypnoTheNomad/docker-bash-completion-macos-brew

12

为Mac页的官方泊坞窗具有上安装bash补一节:

https://docs.docker.com/docker-for-mac/#/installing-bash-completion

如果您已经安装了自制的bash完成:

cd /usr/local/etc/bash_completion.d 
ln -s /Applications/Docker.app/Contents/Resources/etc/docker.bash-completion 
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-machine.bash-completion 
ln -s /Applications/Docker.app/Contents/Resources/etc/docker-compose.bash-completion