LoginSignup
21
21

More than 5 years have passed since last update.

veeweeでVagrant用のboxをつくったメモ

Posted at

成果物 => https://github.com/luckypool/veewee-ubuntu-saucy-64

はじめに

veeweeで base box をつくるモチベーションは下記のような感じ

  • Vagrant は気軽に scrap & build できてアツい
  • vagrantbox.esで各種 base box が配布されてて、気軽に使える
  • しかし 人様のboxは何をどうやって作ったか分からん ので base box 自分でつくりたい

ってことでveeweeをつかってみました

なんで veewee?

packerでも base box を作ることができます。しかし、documentをみながら一つ一つ設定していくのは結構手間がかかります。また、基本設定はなんだかんだ同じようなはずなので、先人の知恵(veewee/templates)が詰まってるveeweeが便利そうです。また、状況によって template を自分好みに修正すれば良さそうです。

今回はVagrantで使うVirtualBoxのイメージを作ってみました。

以下はそのメモです。

About “veewee”

そもそも veewee って何か?
「VMイメージを簡単に作る便利ツール」です。gemになってます。
Vagrant, VirtualBox, VMWare, KVMなどのイメージをつくることができるようです。

Requirements

Installation

Using template

bundle exec veewee vbox templates | grep -i ubuntu

こんな感じで ubuntu の base box のテンプレート一覧が取得出来ます。
私は学生時代 yum よりは apt にお世話になってたので、 ubuntu-13.10-server-amd64 のテンプレートを使うことします。

bundle exec veewee vbox define ‘ubuntu-saucy-64’ ‘ubuntu-13.10-server-amd64’

すると definitionsディレクトリ以下に下記のようなスクリプト(テンプレート)が作られます。

definitions
└── ubuntu-saucy-64
    ├── apt.sh
    ├── build_time.sh
    ├── chef.sh
    ├── cleanup.sh
    ├── definition.rb
    ├── parallels.sh
    ├── preseed.cfg
    ├── puppet.sh
    ├── ruby.sh
    ├── sudo.sh
    ├── vagrant.sh
    └── vbox.sh

このままでもOKですが、私はpreseed.cfgを2箇所だけ修正しました

他にも修正したい場合はドキュメント参照しましょう

Build box

bundle exec veewee vbox build ubuntu-saucy-64

これで iso イメージのダウンロードから基本設定までやってくれます。GUIをオフにすることもできるようですが、勝手に設定されてくのを眺めるのも面白いです。

Export box

bundle exec veewee vbox export ubuntu-saucy-64

これで ubuntu-saucy-64.box が生成されます
そして、ログにあるとおりにboxを追加して vagrant up するだけです :)

vagrant box add ubuntu-saucy-64 ./ubuntu-saucy-64.box
vagrant init ubuntu-saucy-64
vagrant up
vagrant ssh

おわりに

成果物 => https://github.com/luckypool/veewee-ubuntu-saucy-64

  • veewee は先人の知恵(veewee/templates)が詰まってる
  • このtemplatesを参考に修正していけばカスタムbase boxがつくれる
  • README.md見れば大抵のことは事足りるので簡単です

base box 作ったらあとは chef で煮るなり焼くなりして遊びましょう。

以上!

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