J'exécute docker et je veux que la commande bash
soit terminée pour les commandes et les paramètres docker
.
Si vous avez déjà homebrewbash-completion
installé installez simplement le script de fin de docker dans le bash_completion.d
curl -XGET https://raw.githubusercontent.com/docker/cli/master/contrib/completion/bash/docker > $(brew --prefix)/etc/bash_completion.d/docker
Remarque: Si vous n'avez pas d'homebrew bash-completion
installé, suivez ces instructions pour l'installer avant d'exécuter la ligne ci-dessus.
Remarque: l'achèvement dépend de certaines fonctions définies dans debian bash-complètement . Par conséquent, il est possible que la recherche du script de fin de docker comme décrit dans complètement/bash/docker ne fonctionne pas. Si vous essayez de terminer docker run
(en appuyant sur TAB), vous pouvez obtenir une erreur comme __ltrim_colon_completions: command not found
. Cela peut signifier que vous n'avez pas installé les scripts de complétion bash.
La page officielle de Docker pour Mac contient une section sur l'installation de l'achèvement de bash:
https://docs.docker.com/docker-for-mac/#bash
Si vous avez installé l'achèvement de Homebrew 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
Les scripts d'achèvement sont fournis avec Docker Beta. Je veux qu'ils restent à jour. Donc, sous OS X ...
Symlink les fichiers
find /Applications/Docker.app \
-type f -name "*.bash-completion" \
-exec ln -s "{}" "$(brew --prefix)/etc/bash_completion.d/" \;
Le point d'achoppement pour moi était qu'une fois que vous préparez l'installation de bash-competion, vous devez ajouter quelques lignes dans votre .bash_profile pour le charger une fois que vous lancez Terminal:
if [ -f $(brew --prefix)/etc/bash_completion ]; then
. $(brew --prefix)/etc/bash_completion
fi
Source: http://davidalger.com/development/bash-completion-on-os-x-with-brew/
Parce que je n'ai trouvé nulle part une documentation étape par étape, j'ai fait un script rapide pour installer homebrew, bash-complètement et finalement les scripts de fin pour docker. https://github.com/HypnoTheNomad/docker-bash-completion-macos-brew
L'achèvement automatique de Docker n'était pas seulement nécessaire pour Mac, il était également nécessaire pour les terminaux Ubuntu/Bash.
Dans 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
L'achèvement sera disponible lors de la prochaine connexion.
Depuis son meilleur résultat dans Google, j'ai ajouté une réponse ici.
Juste pour être dit: si vous utilisez brew : brew install docker
fera tout ce dont vous avez besoin. Il comprend brew link docker
qui installe la complétion dans `brew --prefix`/etc/bash_completion.d/docker
même sujet, même réponse pour docker-machine
, docker-compose
, etc. ...
sinon (vous utilisez peut-être Docker Beta (nouveau package d'installation de docker "plus natif" sans Virtualbox), vous devez toujours l'ajouter manuellement, puis suivez réponse de Michael plus jetez un œil aux scripts de complétion supplémentaires pour docker -machine, docker-compose et certains Shell-helper qui sont gérés dans le 'script' de CodeCorrupt