Docker Compose - コマンド補完
原文:Command Completion
https://docs.docker.com/compose/completion/
コマンド補完のインストール
Bash
bash completion(補完)がインストールされていることを確認します。最小インストールではない Linux を使っているのなら、bash 補完を使えるでしょう。Mac では brew install bash-completion
でインストールします。
補完スクリプトを /etc/bash_completion.d/
に置きます( Mac では /usr/local/etc/bash_completion.d/
です)。使用例:
curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose --version | awk 'NR==1{print $NF}')/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
次回ログイン時から補完が使えるようになります。
Zsh
補完スクリプトを /path/to/zsh/completion
に置きます。使用例:~/.zsh/completion/
mkdir -p ~/.zsh/completion
curl -L https://raw.githubusercontent.com/docker/compose/$(docker-compose --version | awk 'NR==1{print $NF}')/contrib/completion/zsh/_docker-compose > ~/.zsh/completion/_docker-compose
$fpath
ディレクトリに含めます。例:``/.zshrc` への追加
fpath=(~/.zsh/completion $fpath)
compinit
が読み込まれ、~/.zshrc
に追加されていることを確認します。
autoload -Uz compinit && compinit -i
それから、シェルを読み込み直します。
exec $SHELL -l
利用可能な補完
何を補完するかは、どのようなコマンドを使うかに依存します。
- docker-compose で使えるコマンド
- 個々のコマンドで利用可能なオプション
- 特定の関連性があると思われるサービス名(例:実行中・停止中インスタンスのサービスや、イメージから作られたサービス、あるいはサービスの元となる Dockerfile)
-
docker-compose scale
では、サービス名に自動的に "=" を追加して補完します。 - 選択したオプションの引数、例えば
docker-compose kill -s
は SIGHUP と SIGUSR1 のようなシグナルを補完
Compose を速く入力ミス無く、気持ちよく使いましょう!