Docker Machine のインストール

macOS と Windows の場合 Docker for MacDocker for WindowsDocker Toolbox をインストールしたら、数ある Docker 製品とともに Docker Machine が同時にインストールされます。

Docker Machine だけをインストールしたい場合は、次の節で示す手順に従って Docker Machine のバイナリを直接インストールすることができます。 GitHub 上の docker/machine リリース・ページ に、最新のバイナリバージョンがあります。

Docker Machine の直接インストール

  1. Docker をインストールします。
  1. Docker Machine のバイナリをダウンロードして実行パスに展開します。

macOS を利用している場合:

$ curl -L https://github.com/docker/machine/releases/download/v0.12.2/docker-machine-`uname -s`-`uname -m` >/usr/local/bin/docker-machine && \
chmod +x /usr/local/bin/docker-machine

Linux を利用している場合:

$ curl -L https://github.com/docker/machine/releases/download/v0.12.2/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine &&
chmod +x /tmp/docker-machine &&
sudo cp /tmp/docker-machine /usr/local/bin/docker-machine

Windows 上において Git BASH を利用している場合:

$ if [[ ! -d "$HOME/bin" ]]; then mkdir -p "$HOME/bin"; fi && \
curl -L https://github.com/docker/machine/releases/download/v0.12.2/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe" && \
chmod +x "$HOME/bin/docker-machine.exe"

重要

上のコマンドは Windows 上において実行していますが、これができるのは Git BASH などを利用して、 chmod といった Linux コマンドをサポートしている端末エミュレーターを使っているからです。

上記以外は docker/machine リリース・ページ からバイナリ・リリースを直接ダウンロードしてください。

  1. インストール後の確認として Machine のバージョンを表示してみます。
$ docker-machine version
docker-machine version 0.12.2, build 9371605

bash 補完スクリプトのインストール

Machine リポジトリには便利な bash スクリプトがあり、以下のような機能を利用できます。

  • コマンド補完
  • シェルプロンプト内にアクティブなマシンを表示する機能
  • アクティブマシンを切り替えるサブコマンド docker-machine use を実現するラッパー

スクリプトのバージョンを確認し保存します。 保存先は /etc/bash_completion.d または /usr/local/etc/bash_completion.d とします。

scripts=( docker-machine-prompt.bash docker-machine-wrapper.bash docker-machine.bash ); for i in "${scripts[@]}"; do sudo wget https://raw.githubusercontent.com/docker/machine/v0.12.2/contrib/completion/bash/${i} -P /etc/bash_completion.d; done

docker-machine のシェル・プロンプトを有効にするために、~/.bashrc 内の PS1$(__docker_machine_ps1) とします。

PS1='[\u@\h \W$(__docker_machine_ps1)]\$ '

詳細な情報は 各スクリプトの上段 にコメントとして記述されています。