akadama

そこらへんにいるプログラマが適当にやってます

VagrantとVeeweeを使ってみた

渋谷.rb[:20120516] で飛び込みLTした内容のフォローです

最近こんなエントリーが上がってました

2012年のアジャイル動向もわかる!Technology Radarが公開されていました|世界 ThoughtWorks

正式版が出たVagrantの順位が上がってますね
ということで試してみましょう

Vagrantとは

VirtualBoxの仮想マシンをコマンドラインから作ってくれるRubyのライブラリです

Vagrantの流れ

  1. Boxと呼ばれる仮想マシンの雛形を用意する
  2. ChefやらPuppetで必要なアプリのインストールや設定ファイルを配置する
  3. (゚Д゚)ウマー

実際にやってみる

ちなみに Ruby は入ってる前提です
まずはgemを入れましょう

1
gem install vagrant

終わったら使用するboxを選びます
http://vagrantbox.es/ から適当なのを選んでみましょう
ここでは当然 Gentooを選びました

1
2
3
4
# 指定したURLのBoxをgentooという名前で使えるようにダウンロードしてきます
vagrant box add gentoo http://dl.dropbox.com/u/4270274/gentoo64-0.7.box
# 雛形となるboxを指定します
vagrant init gentoo

この時点でカレントフォルダにVagrantfileができます
Vagrantfileにはネットワークの設定だったりChef/Puppetの設定を記述できます
設定し終わったら仮想マシンを立ち上げます

1
vagrant up

あとはvagrant sshなどで中にはいってゴリゴリ開発が可能です

ただし…

この時点ではBoxには何が入ってるかよくわかりません
出来ればプレーンなBoxを作りたいですよね
ということでBoxを作るためのgem, veewee を使ってみましょう

1
2
# gemのインストール
gem install veewee --pre

ここでは開発版のgemを入れてみます

テンプレートからBoxを作ります
使用できるテンプレートの一覧はこれで確認できます

1
2
# テンプレートの表示
veewee vbox templates

いろいろ出ます
もちろんここではGentooじゃなくてUbuntuとかもっとナチュラルなやつを選びます

1
2
3
4
5
6
7
8
9
10
11
# Box作成用のテンプレートを選択
veewee vbox define 'ubuntu1204' 'ubuntu-12.04-server-amd64'

# Box作成用仮想マシンの作成(ISO等のダウンロードもします)
veewee vbox build 'ubuntu1204'

# vagrant用にアウトプット
vagrant basebox export 'ubuntu1204'

# vagrantで使えるように
vagrant box add 'ubuntu1204' ubuntu1204.box

ここまで来たら vagrant init から仮想マシンを作ればオッケーです

Comments