2014-10-01 125 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