LoginSignup
2
2

More than 5 years have passed since last update.

Mac OS X に boot2docker をインストールする

Last updated at Posted at 2015-07-04

こんにちは。
毎日のように Vagrant で up と destroy を繰り返している者です。
大変便利に活用しているのですが、仮想マシンの起動・停止とプロビジョニングを一日に何度も実行していると待ち時間も馬鹿にならないため、もっと素早くアプリケーションを立ち上げて開発サイクルを回したいなあと思っていました。
そんなときは Docker 使ってみては?というアドバイスを頂きましたのでさっそくインストールから試してみたいと思います。

環境

boot2docker は VirtualBox 上に Linux 仮想マシンを立ち上げ、その上でコンテナを実行します。

  • Mac OS X Yosemite
  • Virtual Box 4.3.28
  • boot2docker 1.7.0

VirtualBox のインストール

https://www.virtualbox.org/wiki/Downloads
私は既にVirtualBoxを使用しているので、インストールは省略しました。

boot2docker のインストール

http://boot2docker.io
Boot2Docker-1.7.0.pkg をダウンロードしてインストールします。

仮想マシンの作成

boot2docker init で VirtualBox の仮想マシンを作成します。

$ boot2docker init

仮想マシンの起動

boot2docker up で仮想マシンが起動します。
出力メッセージ末尾の環境変数がのちほど必要になります。

$ boot2docker up

(中略)

To connect the Docker client to the Docker daemon, please set:
    export DOCKER_HOST=tcp://192.168.59.104:2376
    export DOCKER_CERT_PATH=/Users/takayuki/.boot2docker/certs/boot2docker-vm
    export DOCKER_TLS_VERIFY=1

仮想マシンの状態確認は boot2docker status です。

$ boot2docker status
running

環境変数の設定

docker コマンド用に環境変数を設定します。

$ export DOCKER_HOST=tcp://192.168.59.104:2376
$ export DOCKER_CERT_PATH=/Users/takayuki/.boot2docker/certs/boot2docker-vm
$ export DOCKER_TLS_VERIFY=1

dockerコマンドのテスト

$ docker info
Containers: 0
Images: 0

(中略)

Init Path: /usr/local/bin/docker
Docker Root Dir: /mnt/sda1/var/lib/docker
$

仮想マシンの停止

$ boot2docker halt
$ boot2docker status
poweroff

仮想マシンの削除

$ boot2docker destroy

こんなとき

  • docker infoCannot connect to the Docker daemon. Is 'docker -d' running on this host?
    • env | grep DOCKER で環境変数が正しく設定されているか確認しましょう。

まとめ

仮想マシンの作成から削除までのオプションは Vagrant と似たような感じで実行できるので、とてもわかりやすいですね。私は uphalt を使いましたが、startstop でも良いようです。
docker コマンドについてはまた後日勉強します。

参考

2
2
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
2
2