2.9 KiB
layout | title |
---|---|
default | FAQ |
FAQ
Why should I use Vagrant? What I'm doing now works just fine.
One could say that web development was working just fine prior to the rise of MVC and opinionated development frameworks and they would be speaking the truth as well. Vagrant is not trying to change the way you work because its wrong, per se, but move web development forward by providing isolated environments which are easy to build, portable, and lightweight. For more specific reasons, check out the "Why Vagrant?" page.
Could you perhaps turn convert a Vagrant project into an EC2 instance for deployment?
That's where Chef comes in. Vagrant uses Chef for provisioning VMs. It's basically software configuration management (same category as cfengine or Puppet) -- you write cookbooks that specify how a system should be set up. If you write your Chef configuration the right way you can take the same set of Chef cookbooks you write and deploy to EC2 or any other Linux box, virtual or not. So with Vagrant you can essentially pass around a virtual machine configuration amongst your team and be confident that the entire team is coding and testing in a near-exact replica of the production environment. Then when you're ready to deploy to production, you should be able to share the same cookbooks and set up the same environment for production as well.
Vagrant would be so much better if it had feature X
!
Vagrant is open source and released under a permissive license, so feel free to modify it and add the feature! Open up a ticket explaining why the feature adds value to Vagrant with a link to the patch you'd like us to merge in and we probably will. If you aren't comfortable adding the feature yourself, still make a ticket and if its compelling enough, someone will add it in for you.
Don't virtual machines slow down your main development machine?
The short answer: no. Longer answer: Given a big enough and busy enough virtual machine... perhaps. But through real-world usage, we've found that most virtual machines are small, using 256 to 500 MB or RAM, and typically are running mostly idle processes. Its not as if the virtual machines are running 3D games (although I suppose you could try it)!
Virtual machines take up way too much hard drive space!
An average virtual machine that Vagrant provisions is about 500 MB of physical
disk space total (although the virtual drive had a capacity
of 40 GB). Sure, if you have 10 vagrant projects with their virtual environments built,
this is 5 GB, but its still only 5 GB. And don't forget that Vagrant allows you to complete
tear down the environment and rebuild it in a flash, so you shouldn't ever even need all
those environments built at the same time. Just run vagrant up
when you need a virtual
machine and disk space will be kept low.