and others) • Define the configuration in code with a single file • Provision the VM with Shell scripts, Puppet, Ansible, Chef and other tools 9 What is Vagrant?
and it’s first time? yes start provisioning the VM VM is running vagrant up downloads the box if needed, loads the vagrant configuration (share folders, port forwarding, etc) and starts the VM 13
! • Add the Vagrantfile and provisioning files (puppet, chef, shell scripts, etc) to your repository ! • Add .vagrant folder to your repository ignore file or your global ignore file. 44
port forwarding and networks carefully • Avoid port collision by adding auto_correct: true for each port forwarding • Use --debug on your provision options when something is wrong • Have guest additions always up to date • Improve share folders performance by enabling nfs (is not available on windows) • If you are using Puppet modules, don't forget to add the module dependencies as well 45