loading...


Create vagrant base boxes with veewee

How to create vagrant base boxes with veewee

if your using vagrant for development like me. Then you quicklly like to make your own vagrant base boxes. with php, python, ruby or someother dev env.

Tis verry easy todo with with veewee, first we need to install veeweee this is easy done with this command in terminal

$ gem install veeweee

 now should veewee be installed type in terminal

$ vagrant basebox templates

To get a output like this

The following templates are available:
vagrant basebox define '<boxname>' 'CentOS-4.8-i386'
vagrant basebox define '<boxname>' 'CentOS-5.5-x86_64-netboot'
vagrant basebox define '<boxname>' 'CentOS-5.6-i386'
vagrant basebox define '<boxname>' 'CentOS-5.6-i386-netboot'
vagrant basebox define '<boxname>' 'CentOS-5.6-x86_64-netboot'
vagrant basebox define '<boxname>' 'CentOS-5.7-i386-netboot'
vagrant basebox define '<boxname>' 'CentOS-5.7-x86_64-netboot'
vagrant basebox define '<boxname>' 'CentOS-6.0-i386'
vagrant basebox define '<boxname>' 'CentOS-6.0-i386-netboot'
vagrant basebox define '<boxname>' 'CentOS-6.0-x86_64'
vagrant basebox define '<boxname>' 'CentOS-6.0-x86_64-minimal'
vagrant basebox define '<boxname>' 'CentOS-6.0-x86_64-netboot'
vagrant basebox define '<boxname>' 'CentOS-6.1-x86_64-minimal'
vagrant basebox define '<boxname>' 'Debian-5.0.8-amd64-netboot'
vagrant basebox define '<boxname>' 'Debian-5.0.8-i386-netboot'
vagrant basebox define '<boxname>' 'Debian-6.0.3-amd64-netboot'
vagrant basebox define '<boxname>' 'Debian-6.0.3-i386-netboot'
vagrant basebox define '<boxname>' 'Fedora-14-amd64'
vagrant basebox define '<boxname>' 'Fedora-14-amd64-netboot'
vagrant basebox define '<boxname>' 'Fedora-14-i386'
vagrant basebox define '<boxname>' 'Fedora-14-i386-netboot'
vagrant basebox define '<boxname>' 'Fedora-15-i386'
vagrant basebox define '<boxname>' 'Fedora-15-i386-netboot'
vagrant basebox define '<boxname>' 'Fedora-15-x86_64'
vagrant basebox define '<boxname>' 'Fedora-15-x86_64-netboot'
vagrant basebox define '<boxname>' 'Fedora-16-i386'
vagrant basebox define '<boxname>' 'Fedora-16-x86_64'
vagrant basebox define '<boxname>' 'Sysrescuecd-2.0.0-experimental'
vagrant basebox define '<boxname>' 'archlinux-i386'
vagrant basebox define '<boxname>' 'archlinux-i386-netboot'
vagrant basebox define '<boxname>' 'archlinux-x86_64'
vagrant basebox define '<boxname>' 'archlinux-x86_64-netboot'
vagrant basebox define '<boxname>' 'freebsd-8.2-experimental'
vagrant basebox define '<boxname>' 'freebsd-8.2-pcbsd-i386'
vagrant basebox define '<boxname>' 'freebsd-8.2-pcbsd-i386-netboot'
vagrant basebox define '<boxname>' 'gentoo-latest-i386-experimental'
vagrant basebox define '<boxname>' 'gentoo-latest-x86_64-experimental'
vagrant basebox define '<boxname>' 'openSUSE-11.4-DVD-i586'
vagrant basebox define '<boxname>' 'openSUSE-11.4-DVD-x86_64'
vagrant basebox define '<boxname>' 'openSUSE-11.4-NET-i586'
vagrant basebox define '<boxname>' 'openSUSE-11.4-NET-x86_64'
vagrant basebox define '<boxname>' 'openindiana-148-ai-x86'
vagrant basebox define '<boxname>' 'opensuse-11.4-i386-experimental'
vagrant basebox define '<boxname>' 'scientificlinux-6.1-i386-netboot'
vagrant basebox define '<boxname>' 'scientificlinux-6.1-x86_64-netboot'
vagrant basebox define '<boxname>' 'solaris-11-express-i386'
vagrant basebox define '<boxname>' 'ubuntu-10.04.2-amd64-netboot'
vagrant basebox define '<boxname>' 'ubuntu-10.04.2-server-i386-netboot'
vagrant basebox define '<boxname>' 'ubuntu-10.04.3-server-amd64'
vagrant basebox define '<boxname>' 'ubuntu-10.04.3-server-amd64-alt'
vagrant basebox define '<boxname>' 'ubuntu-10.04.3-server-i386'
vagrant basebox define '<boxname>' 'ubuntu-10.10-server-amd64'
vagrant basebox define '<boxname>' 'ubuntu-10.10-server-amd64-netboot'
vagrant basebox define '<boxname>' 'ubuntu-10.10-server-i386'
vagrant basebox define '<boxname>' 'ubuntu-10.10-server-i386-netboot'
vagrant basebox define '<boxname>' 'ubuntu-11.04-server-amd64'
vagrant basebox define '<boxname>' 'ubuntu-11.04-server-i386'
vagrant basebox define '<boxname>' 'ubuntu-11.10-server-amd64'
vagrant basebox define '<boxname>' 'ubuntu-11.10-server-amd64-ishaya'
vagrant basebox define '<boxname>' 'ubuntu-11.10-server-amd64-ruby192'
vagrant basebox define '<boxname>' 'ubuntu-11.10-server-i386'
vagrant basebox define '<boxname>' 'ubuntu-8.04.4-server-amd64'
vagrant basebox define '<boxname>' 'ubuntu-8.04.4-server-i386'
vagrant basebox define '<boxname>' 'windows-2008R2-amd64'
 

To create a new  centos box you just type

$ vagrant basebox define myCentOsBox CentOS-4.8-i386

It will create this files

definition.rb
postinstall.sh
preseed.cfg

Alter this files and start building the box now with this command

vagrant basebox build 'myCentOsBox'

After its build vallidate the basebox

vagrant basebox validate 'myCentOsBox'

if everything fine export the base box

vagrant basebox export 'myCentOsBox'

Now add it to vagrant offcourse 

vagrant box add 'myCentOsBox' myCentOsBox.box

finally init the vagrant box

vagrant init myCentOsBox
vagrant up