Here’s a cheat sheet for Vagrant.
Entering vagrant in the command line reveals all available commands.
Ensure you’re in the directory containing the Vagrantfile before executing these commands!
Basic Commands
vagrant: Display a list of all available commands. Ensure you’re in the directory with theVagrantfile.vagrant init: Initialize a new Vagrant environment by creating aVagrantfile.vagrant init <boxpath>: Initialize with a specific base box. Find boxes in the Vagrant box catalog.
Managing VMs
vagrant up: Start your Vagrant environment. Provisions the VM only on the first run.vagrant suspend: Pause the virtual machine, saving its current state.vagrant halt: Stop the VM, similar to shutting down a physical computer.vagrant destroy: Remove all traces of the VM from your system. Use-fto bypass confirmation.vagrant provision: Manually provision the VM, applying configuration changes.vagrant reload: Restart the VM. Use--provisionto force provisioning on restart.vagrant resume: Resume a suspended VM.vagrant upcan also be used for this purpose.
Interaction
vagrant ssh: Securely log into the VM via SSH. Usevagrant ssh <boxname>if you’ve named your box in theVagrantfile.
Boxes
vagrant box list: View installed boxes on your system.vagrant box add <name> <url>: Download a box image to your system.vagrant box outdated: Check if installed boxes are up to date.vagrant box remove <name>: Remove a box image from your system.vagrant box update: Update the base box used by a running VM.
Snapshots
vagrant snapshot save <name>: Save the current state of the VM, allowing rollback. Often,vm-nameisdefault.
Utilities
vagrant -v: Get the version of Vagrant installed on your system.vagrant status: Show the current status of the VM.vagrant global-status: List status of all Vagrant environments on the system. Use--pruneto remove invalid entries.vagrant provision --debug: Increase the verbosity of output for troubleshooting.vagrant up --provision | tee provision.log: Force provisioning while logging output to a file.vagrant push: Deploy code as configured in yourVagrantfile.
Plugins
- Install Host Updater: Automatically update your
/etc/hostsfile when starting/stopping your Vagrant box.
vagrant plugin install vagrant-hostsupdater
Notes
- Use plugins like
vagrant-vbguestfor guest additions and optimizations. - In environments like VVV, enable
xdebugby SSH into the VM and runningxdebug_on. - To start Vagrant with a specific file, place the
Vagrantfilein the desired directory, add the box, initialize, and runvagrant up.