Here is the Cheatsheet to work with Vagrant. Be sure
that you are in the same directory as the Vagrantfile when running these
commands!
Creating 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.
VM lifecycle commands
- 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 halt – it will halts
the current running image.
- Vagrant suspend – It will
suspends the current running machine and it will store the current state
of the VM.
- 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 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.
Cleaning up a VM
- vagrant
destroy -- stops and deletes all traces of the vagrant machine
- vagrant
destroy -f -- same as above, without confirmation
Box
management
- 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 boxes remove
<name> -- deletes a box from the machine
- vagrant package --
packages a running virtualbox env in a reusable box
Saving progress
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
Additional Tips
- 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
No comments:
Post a Comment