Help us understand the problem. What is going on with this article?

fish でdockerコマンドを補完(completion)する

More than 1 year has passed since last update.

Docker + fish でdockerコマンドを補完(completion)する

dockerコマンドを打つときにコマンド補完したくなったので、設定を残しておきます。

環境

  • fish, version 2.7.1
  • macOS Mojave 10.14

インストール

補完に必要なファイルをダウンロードします(今回は、 dockerdocker-compose )。ダウンロード先は、fishコンフィグ内の completions 配下です。
fishでは、 source .bash_profile みたいなことをしなくても、上記ディレクトリ配下に補完用のファイルがあれば勝手に補完してくれます。

curl https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/fish/docker.fish -o ~/.config/fish/completions/docker.fish
curl https://raw.githubusercontent.com/docker/compose/master/contrib/completion/fish/docker-compose.fish -o ~/.config/fish/completions/docker-compose.fish

ダウンロードが完了し、 docker とタイプしてTabをタイプするとこんな感じで補完がされます。

fish_completion.jpg

また、すでに起動しているコンテナがある場合は、 docker stop で補完すると、対象のコンテナを補完してくれて便利ですね。

fish_completion_demo.jpg

補足

補完ができるのは今の所、 bash/zsh/fish/powershell です。

bashなどの他のシェルを利用されている方は、 こちら の公式に設定方法が記載されていますので、
参考にしていただけると良いかと思います。

あと、dockerコマンドは、 https://raw.githubusercontent.com/docker/docker-ce/master/components/cli/contrib/completion/bash/docker からダウンロードする必要がありますので、ご注意ください。
※公式のドキュメントは、docker-composeとdocker-machineは見つけましたが、dockerは見つけられませんでした。

では、よきDockerライフを🐳🐳🐳

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away