Vagrant で仮想マシンを動かしてみる

Vagrant をインストールした後は、
公式サイト上に Ubuntu 10.04 のイメージが用意してあるので、
これをもとに仮想マシンを起動してみた。

実行環境は、Mac OS X 10.6。

 vagrant box add base http://files.vagrantup.com/lucid32.box
 mkdir test
 cd test
 vagrant init
 vagrant up

本来ならこれで VM が利用できるようになっているはずだが、
MacOS Xではなぜか、SSHで接続できない。

[default] Failed to connect to VM!
Failed to connect to VM via SSH. Please verify the VM successfully booted
by looking at the VirtualBox GUI.

仕方がないので一度強制終了。

 vagrant halt --force

VirtualBox GUI で起動して、ID/Password 共に vagrant でログイン。
NIC に IP アドレスが割り当てられていなかった。とりあえず、ネットワークを有効にしておく。

 sudo /etc/init.d/networking restart

また、/etc/network/interfaces の設定を1行コメントアウトした。

 #pre-up sleep 2

これで作業終了。VMをシャットダウン。

 sudo shutdown -h now

ふたたび、vagrant up コマンドで vm を起動すると、ちゃんと起動してくれた。

 vagrant up

今後は、vagrant ssh コマンド経由で vm にログインできる。

mac: test okinaka$ vagrant ssh
Linux lucid32 2.6.32-28-generic #55-Ubuntu SMP Mon Jan 10 21:21:01 UTC 2011 i686 GNU/Linux
Ubuntu 10.04.2 LTS

Welcome to Ubuntu!
 * Documentation:  https://help.ubuntu.com/
Last login: Sun Jul 17 16:20:39 2011 from 10.0.2.2
vagrant@lucid32:~$ 

物理マシンのカレントディレクトリ(test)が、 仮想マシン上の /vagrant にマウントされている点がポイント。開発作業は、双方からファイルの読み書きができる、このディレクトリを介してデータの共有するといいだろう。

後は手動もしくは、構成管理ツール(Chef)を使って目的の環境を構築していくことになる。