LoginSignup
19
15

More than 5 years have passed since last update.

docker-machineを使ってみる

Posted at

はじめに

Elasticsearch+Kibanaで遊びたい。今なら、便利なdockerイメージとかあるんじゃね?そういえば、boot2dockerってインストールしてたなーと思ったら、今はdocker-machineってのが普通らしい。docker-machineってなんだ? (←今ココ)

ということで、古いboot2docker環境を捨てて、docker-machineでdocker環境を構築してみます。boot2dockerを入れていない人は、boot2dockerのアンインストールは飛ばしてください。

環境

  • MacBook Air (11-inch, Early 2015)
  • Mac OS X El Capitan バージョン 10.11.3

docker-machineとは

Docker Machineとは、dockerコンテナを動かすためのホスト環境を構築するためのツールです。これを使えばローカルPC上でdockerコンテナが使えるようになります。以前は、boot2dockerというツールが一般的でしたが、今はdocker-machineがおすすめのようです。

boot2dockerをアンインストール

[注意]
既存のdocker&boot2docker環境が不要だったので、即アンインストールしています。
大事なコンテナがある場合は移行が必要な気がするのでご注意を。

$ brew list | grep docker
boot2docker
docker

homebrewでインストールしていたのでアンインストールします。

$ brew uninstall docker boot2docker
Uninstalling /usr/local/Cellar/docker/1.10.1... (10 files, 10.4M)
Uninstalling /usr/local/Cellar/boot2docker/1.8.0_1... (3 files, 8M)

複数バージョン入っている、古いバージョンが残っている場合、--forceオプションを使うとキレイになりそうです。

docker-machineをインストール

docker-machimeはdockertoolboxというツール群に含まれています。homebrew caskで入れられるのでインストールします。

$ brew cask install dockertoolbox

dockerホストの作成と起動

docker-machineコマンドで、defaultという名前でdockerホストを作ります。

$ docker-machine create -d virtualbox default

終わったら確認してみます。

$ docker-machine status
Running

Runningであればdockerホストの起動に成功しています。
次に、ローカルからdockerホスト上のコンテナを操作をできるように環境設定します。

$ docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="/Users/syasu/.docker/machine/machines/default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval $(docker-machine env default)

構築したでdefaultの環境を確認すると、あなたのシェルでこれを実行してね、というコメントが出るのでそのとおりに実行します。

$ eval "$(docker-machine env default)"

はい、準備完了です。
確認してみると、ローカル上にdockerホストが起動していることが分かります。

$ docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER    ERRORS
default   *        virtualbox   Running   tcp://192.168.99.100:2376           v1.10.2

これで、最新のdockerライフを送るための準備ができました。
あっという間でした。

おまけ

docker-machineで構築したdockerホストにログインしてみると、いつものクジラが出てきました。中身はboot2dockerなんですね。

$ docker-machine ssh
                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/
 _                 _   ____     _            _
| |__   ___   ___ | |_|___ \ __| | ___   ___| | _____ _ __
| '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__|
| |_) | (_) | (_) | |_ / __/ (_| | (_) | (__|   <  __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
Boot2Docker version 1.10.2, build master : 611be10 - Mon Feb 22 22:47:06 UTC 2016
Docker version 1.10.2, build c3959b1
# 
19
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
15