Vagrant Launches Collaboration Tools for Development Environments
DevOps tool provider Vagrant announced significant new features in their 1.5 release, including a public image repository and the ability to share access to running environments. The Vagrant Cloud is meant to simplify the discovery and distribution of complete development environments. Vagrant Share lets developers collaborate with others by exposing HTTP or SSH access to these virtual environments.
In a recent blog post, the Vagrant team announced a batch of features in Vagrant 1.5. Up until now, users of Vagrant – a tool that simplifies the creation and distribution of configured Linux virtual machines – had to hunt around for machine templates to use. These templates, packaged up into “boxes”, form the foundation of Vagrant and work across a range of providers including VirtualBox, AWS, VMware, and now, Hyper-V. With the launch of the Vagrant Cloud, developers have a centralized location to access public or private boxes, version their boxes, and release boxes for others to use.
Vagrant and its users are populating the public repository with a wide variety of ready-to-use boxes for others to discover. A simple Vagrant Cloud search for “Ubuntu” returns many boxes and lets the user filter results by hosting provider. Logged-in users can also sort results by download count to find the most popular boxes. The Vagrant Cloud contains boxes for Docker, CoreOS, CentOS, Chef, Puppet, Salt, nginx, ElasticSearch, MySQL, Redis, and more.
Vagrant seems to be making developer collaboration a key part of their software. The new Vagrant Share gives any person in any location live access to a running box. In a blog post about this preview feature, Vagrant explained what this feature is all about.
This feature lets you share a link to your web server to a teammate across the country, or just across the office. It'll feel like they're accessing a normal website, but actually they'll be talking directly to your running Vagrant environment. They'll be able to see any changes you make, as you make them, in real time.
With Vagrant Share, others can not only access your web server, they can access your Vagrant environment like it was any other machine on a local network. They can have access to any and every port.
There are three modes of sharing that developers can apply to their box. The HTTP sharing option produces a URL that anyone can use to access a Vagrant environment, even if either party is behind a NAT device or firewall. For more than just web server access, developers can open up SSH to outside participants. Vagrant pointed out example use cases for this, including troubleshooting assistance or pair programming. The final sharing mode is called General Sharing. This lets a developer expose any or all ports of a Vagrant environment to outside participants. For those concerned about the security implications of these sharing features, Vagrant described some security considerations and mechanisms for protection.
What’s next? Vagrant promises a more robust Vagrant Cloud, a commercialization plan, and support for Windows guests.
Coming very soon to Vagrant Cloud: support for organizations, API access, audit logs and statistics for box usage, ACLs on Vagrant Shares, custom domains, and more.
Vagrant Cloud is completely free for now. While we'll eventually charge for some access to it, most personal usage will likely remain free. Our current plans for pricing revolve around commercial use and advanced features.
Vagrant will also have full support for Windows-based guest machines, finally. And we're planning on adding at least two providers to core, if not more.