Tool for creating and managing virtual machines for development purpose.
You can setup specific os with specific provision scripts to build consistent dev environment.
First you need to create Vagrant file where you specify VM options and how you want to provision(Chef/Puppet/BASH/Ansible/Salt/Docker)