Boot2dockerとは
VirtualBoxのフロントエンドとして動き、必要な準備をやってくれます。
Docker専門のVagrantって感じ。
boot2docker
とdocker
の2つのコマンドがインストールされます。
boot2dockerコマンド
Boot2dockerの仮想マシンを操作するためのコマンド。
サブコマンドと組み合わせて使います。
-
boot2docker init
Boot2dockerの仮想マシンイメージをDLしてきて準備してくれる -
boot2docker up
仮想マシンを立ち上げる -
boot2docker halt
仮想マシンを終了する -
boot2docker upgrade
仮想マシンとかコマンド類を更新
dockerコマンド
Dockerコンテナを操作するためのコマンド。
普通にインストールするdocker
コマンドと同じ。
なので詳細はDockerのドキュメント参照。
Boot2dockerの手順に沿って環境変数を設定すると、デフォルトでBoot2dockerの仮想マシンに対して叩くようになります。手間が省けて便利。
使い方
OSX版のBoot2dockerは、アプリ一覧のアイコンからとコマンドラインからboot2docker
コマンドを叩く方法のどちらでも使えます。
コマンドライン版
-
boot2docker init
仮想マシンの準備。初回のみ。 -
boot2docker up
仮想マシンの起動。boot2docker start
でも同じ。 -
eval "$(boot2docker shellinit)"
環境変数を設定。
.bashrc
等に3のコマンドを書いておけば1回で済みます。
アプリアイコン版
公式サイトのドキュメントによると、docker
コマンドを使える状態まで一気に持っていってくれるみたいです。
ちょっとハマったこと
Boot2docker仮想マシンの実行中に、ホストマシンのインターネット接続経路が変わると、通信できなくなります。
具体的には、自宅のWi-FiでDockerイメージを落としたりして、そのままPCをスリープさせて、出先でテザリング接続した場合など。
ホストOSからは普通にネットに抜けられるのに、Boot2docker仮想マシンは駄目な状態になります。
ちゃんと調べてないけど、VirtualBoxのNATアダプタの挙動のような気がする。