Vagrant is used to create a base VM, then when you need to create different configs that all utilize this base VM, use Docker to provision and create different lightweight versions.
|Type||Virtual Container||Virtual Machine|
|Supported OS||Linux only||Linux, Unix, Windows|
|Start up time||Seconds||Minutes|
|Weight||Very lightweight||Heavy, but still lighter than full VM|
|Misc||Quick, easy||Integration with CM tools such as shell scripts, Chef, or Puppet|