Vagrantfile’s are written in Ruby, so you have the full power of Ruby at your fingertips when creating a Vagrantfile.
This post will be an ever growing list of advanced Vagrantfile configurations.
Any changes made to a Vagrantfile can be applied to a running Vagrant Box by running vagrant reload $BOX
.
Disable Shared Folders
config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true
Change the Number of CPUs Allocated
VirtualBox Provider
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--cpus", "2"]
end
VMware Fusion Provider
config.vm.provider "vmware_fusion" do |v|
v.vmx["numvcpus"] = "2"
end
Change the Amount of Memory Allocated
VirtualBox Provider
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--memory", "2048"]
end
VMware Fusion Provider
config.vm.provider "vmware_fusion" do |v|
v.vmx["memsize"] = "2048"
end
Add a Host Only Unconfigured NIC
VirtualBox Provider
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--nic2", "intnet"]
end
VMware Fusion Provider
config.vm.provider "vmware_fusion" do |v|
v.vmx["ethernet1.present"] = "TRUE"
v.vmx["ethernet1.connectionType"] = "hostonly"
v.vmx["ethernet1.addressType"] = "generated"
v.vmx["ethernet1.virtualDev"] = "e1000"
end