vagrant from the command line will display a list of all available commands.
Be sure that you are in the same directory as the Vagrantfile when running these commands!
Creating a VM
vagrant init-- Initialize Vagrant with a Vagrantfile and ./.vagrant directory, using no specified base image. Before you can do vagrant up, you'll need to specify a base image in the Vagrantfile.
vagrant init <boxpath>-- Initialize Vagrant with a specific box. To find a box, go to the public Vagrant box catalog. When you find one you like, just replace it's name with boxpath. For example,
vagrant init ubuntu/trusty64.
Starting a VM
vagrant up-- starts vagrant environment (also provisions only on the FIRST vagrant up)
vagrant resume-- resume a suspended machine (vagrant up works just fine for this as well)
vagrant provision-- forces reprovisioning of the vagrant machine
vagrant reload-- restarts vagrant machine, loads new Vagrantfile configuration
vagrant reload --provision-- restart the virtual machine and force provisioning
Getting into a VM
vagrant ssh-- connects to machine via SSH
vagrant ssh <boxname>-- If you give your box a name in your Vagrantfile, you can ssh into it with boxname. Works from any directory.
Stopping a VM
vagrant halt-- stops the vagrant machine
vagrant suspend-- suspends a virtual machine (remembers state)
Cleaning Up a VM
vagrant destroy-- stops and deletes all traces of the vagrant machine
vagrant destroy -f-- same as above, without confirmation
vagrant box list-- see a list of all installed boxes on your computer
vagrant box add <name> <url>-- download a box image to your computer
vagrant box outdated-- check for updates vagrant box update
vagrant box remove <name>-- deletes a box from the machine
vagrant package-- packages a running virtualbox env in a reusable box
vagrant snapshot save [options] [vm-name] <name> -- vm-name is often
default. Allows us to save so that we can rollback at a later time
vagrant -v-- get the vagrant version
vagrant status-- outputs status of the vagrant machine
vagrant global-status-- outputs status of all vagrant machines
vagrant global-status --prune-- same as above, but prunes invalid entries
vagrant provision --debug-- use the debug flag to increase the verbosity of the output
vagrant push-- yes, vagrant can be configured to deploy code!
vagrant up --provision | tee provision.log-- Runs
vagrant up, forces provisioning and logs all output to a file
- vagrant-hostsupdater :
$ vagrant plugin install vagrant-hostsupdaterto update your
/etc/hostsfile automatically each time you start/stop your vagrant box.
- If you are using VVV, you can enable xdebug by running
vagrant sshand then
xdebug_onfrom the virtual machine's CLI.
Thank you! it's very useful.