#veewee-vagrant-box-definitions
Create custom Vagrant (development) server boxes (i386, 32-Bit) with VeeWee.
Why custom?
- To be used with VirtualBox version 4.1.8: VirualBox guest additions 4.1.8 get installed.
- Ruby-friendly development environment: in case of Ubuntu 10.04.4 Lucid Lynx Server Vagrant box latest RubyGems version is installed.
- Properly named boxes, e.g. "debian-6.0.4-squeeze-server".
- Veewee build steps wrapped by shell scripts, incl. option to delete tmp file artifacts.
- Intended to be used (shared) as git submodule with other projects.
Example for adding as submodule into sub-directory veewee/
:
git submodule add [email protected]:semanticdreamer/veewee-vagrant-box-definitions.git ./veewee
git submodule init && git submodule update
##Building Blocks
- Ruby
- Virtual Box - a general-purpose full virtualizer for x86 hardware.
- Vagrant - a tool for building and distributing virtualized development environments.
- VeeWee - a tool to easily build vagrant base boxes (or kvm, virtualbox and fusion images).
##Requirements
- *nix OS (preferably either Mac OS X or a flavour of Linux, e.g. Debian/ Ubuntu)
- Ruby installed
- rubygems installed
##Setup
Install Virtual Box, version 4.1.8.
Install Vagrant and VeeWee as a RubyGem:
gem install vagrant veewee
##Build boxe(s) of choice
The build.sh
script will also add the created box to your local vagrant environment (vagrant box add...
).
$./build.sh
Usage:
build.sh veewee-definition
Available Veewee definitions:
"debian-6.0.4-squeeze-server"
"ubuntu-10.04.4-lucid-lynx-server"
##Build and Usage Example
In order to build debian-6.0.4-squeeze-server.box
:
./build.sh build-debian-6.0.4-squeeze-server
Configuring the Project to use the Box: Vagrantfile
Vagrant::Config.run do |config|
config.vm.box = "debian-6.0.4-squeeze-server"
end