Scripts to create a lean CentOS Vagrant box.
Run:
./setup
and at the boot prompt press tab to gain access to the boot options.
Add the ks=.*
string you get from the command prompt. The rest of
the installation is automated.
Finally, run the last command that setup
spits out (it's of the
form ./cleanup && ...
). Congratulations! You have just created a
Vagrant box.
The box is constrained to 613 MiB of memory to vaguely resemble an Amazon AWS micro instance. You may want to consider adjusting this for your needs using options like:
config.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", 2048]
vb.customize ["modifyvm", :id, "--ioapic", "on", "--cpus", 2]
end
in your Vagrantfile
.
This box has a heavy bias towards US English locales. If this
affects you, please adjust the ks.cfg
file accordingly. This was
mainly done as a space saving measure.
A simple Ruby-based webserver has been provided in order to
bootstrap the process. Alternatively, you could host the ks.cfg
file on your own HTTP server.
Please be aware that these scripts will not install any special provisioners beyond the shell. Patches will be considered if you wish to contribute support for Puppet, Chef, etc.
The development tools group package is also included for
convenience. This includes things like gcc
and make
as well as
VCSs like git
, hg
, bzr
, etc.
You are encouraged to look at the file vars.sh
to modify the
configuration to best suit your needs. In particular, take note
of the location of the ISOs (which aren't include in the git
repository):
INSTALLER="./isos/CentOS-6.5-x86_64-minimal.iso"
GUESTADDITIONS="./isos/VBoxGuestAdditions_4.3.14.iso"
Assumptions have been made about the location of the hard drive as well:
HDD="${HOME}/VirtualBox VMs/${NAME}/${NAME}.vmdk"
If you wished to be emailed with the various logs the build produces
see the ks.cfg
file and find the line:
EMAIL=root
and adjust accordingly.