Setup
One of the best things (imho) about RV is that it’s host OS agnostic. This project runs on Mac OS, Windows, and Linux. You’ll need ~5GB of free space for this project. The initial vagrant base box is ~1.2GB and the expanding after booting will require an additional ~3.5GB per VM instance.
- Install Virtualbox
- Install Virtualbox’s Extension Pack
- Install Vagrant
- Install Git
- If your host machine is Windows, reboot your computer
- Install Vagrant-vbguest plugin
- Install Vagrant-hostmanager plugin
- Clone this repo:
git clone https://bitbucket.org/backyardclubhouse/rampant-vagrant.git MYPROJECT
- Copy MYPROJECT/vagrant.local.yml.example to MYPROJECT/vagrant.local.yml for editing
servers-WebApp-virtualbox-name
: Changes the guest name listed within VirtualBox.servers-WebApp-provision-LABELNAME-params-path
: Set the boostrapscript path (relative to the root of the project). LABELNAME can be anything you want.- Please see the bootstrapScripts.md file for more information on the available provisioning bootstrap scripts.
- In terminal (or Git Bash on Windows), change directory to the project folder and type
vagrant up
. The project will download the rest of the necessary files.
So, what just happened?
Vagrant is essentially a wrapper tool that builds and provisions virtual machines (in our case, VirtualBox machines) in a repeatable manner. “Vagrant is a tool for building complete development environments…and makes the ‘works on my machine’ excuse a relic of the past.” With consistent environments, all developers can work on their code in their own self-contained place, without fearing accidentally overwriting someone else’s work. For more information about Vagrant, head to its website at https://vagrantup.com.
Vagrant is a tool for building complete development environments…and makes the “works on my machine” excuse a relic of the past. -VagrantUp.com
Vagrant copied a base box from our servers at BMC (centos-6.x_x64.box) and extracted the file to a new virtual machine, using the name you set in the vagran.local.yml file. By the way, if you want to know how I built my base box, my build document is found within the buildFiles folder of the code repository.