Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Vagrant 1.6 Adds Support for Docker Containers

Vagrant 1.6 Adds Support for Docker Containers

This item in japanese

Lire ce contenu en français

Vagrant's new version 1.6 includes Docker-based development environments in addition to the previously supported virtualization and cloud providers for VirtualBox, VMware or AWS.

This new release allows Vagrant users to do the same virtual machine operations and workflow they are used to, but with Docker containers. The Docker provider supports containers from Dockerfiles, useful to iterate when creating new containers, or the Docker index. The index has a long list of prebuilt repositories including official Ubuntu, CentOS or Fedora base images, as well as environments with, for example, MySQL, Java or MongoDB. This release of Vagrant also includes two new commands for the Docker provider, docker-logs, to show the container logs, and docker-run, that allows executing arbitrary commands in a container. On those platforms where Linux containers are not natively supported, such as OS X or Windows, Vagrant automatically manages a proxy Linux VM where the containers are run, without needing any additional software.

With Docker quickly approaching version 1.0, there are more and more tools supporting Docker containers. Just a few weeks ago Red Hat announced several new Linux container projects for streamlined application delivery and orchestration across bare metal systems, virtual machines and private and public clouds via containers and Docker technology. Eric Brewer, vice president of infrastructure at Google said about Linux containers:

At Google we make extensive use of Linux application containers to support our production systems. They offer high levels of run-time isolation and deployment flexibility that both reduce the complexity of managing distributed applications, and increase our overall operating efficiency.

These notable new features are also added to Vagrant 1.6:

  1. Windows guests: Vagrant 1.6 adds support to run Windows within the Vagrant environments (VirtualBox, Hyper-V, EC2, and so on) allowing you to use PowerShell scripts, Chef, Puppet, etc. to install and configure software. Windows guests have vagrant rdp, equivalent to vagrant ssh on Linux, which allow single-command access to a complete remote desktop environment in your Windows environment. Microsoft Open Tech provides an evaluation copy of Windows in the form of a Vagrant box packaged for Hyper-V.

  2. Global status and control: Vagrant 1.6 introduces a new global-status command that will show you the status of all created Vagrant environments on your system. Global control lets you use a unique identifier assigned to each of your Vagrant environments to control it from any directory, not only the directory where the Vagrantfile is. Any Vagrant command, such as destroy, up, suspend,... can be used with that global id.

Other enhancements include a new version command that not only shows the current Vagrant version, but also tells you if your version is out of date, or the ability to configure provisioners to run on any vagrant up or vagrant reload command, instead of just running on the first vagrant up as it was the case in previous versions. Also, since Vagrant 1.6, Vagrantfiles can contain a post-up message that is displayed after a vagrant up, and boxes can now be compressed with LZMA, which can result in much smaller sizes in a lot of cases.

Rate this Article