Docker challenges virtualization market with containers

The Docker release focuses on improving the stability and overall quality of the application container

The open source Docker container technology is taking on the server virtualization market, offering what some see as a faster alternative to running full virtual machines over hypervisors.

For the latest release of Docker, the development team behind the technology has focused on making the software ready for enterprise use.

"This is the first Docker release where features take the back seat to quality," wrote Docker creator Solomon Hykes, in a blog post announcing the latest version of the software, Docker 0.8.

"Some of the companies using Docker are looking to put [the software] into mission-critical roles, so we want to make sure it is of high quality as possible," said James Turnbull, Docker vice president of services.

Docker is an application container that provides a way to package an application in a virtual container so that it can be run across different Linux distributions.

Hykes created Docker as an internal application for PaaS (platform-as-a-service) company dotCloud. The application generated so much interest since it was released in March 2013 that dotCloud rebranded itself as Docker Inc. and attracted US$15 million in venture capital investment from Greylock Partners.

"We still run the PaaS but our primary business is now Docker the platform," Turnbull said. The software has been downloaded over 400,000 times.

Red Hat included the software in the beta of the next version of its distribution, Red Hat Enterprise Linux (RHEL) distribution, as well as included it in its OpenShift PaaS. Google has also added the software to its Google Compute Engine (GCE) service.

"Customers are recognizing that containers give them a lot of capabilities [to run] lightweight portable applications that have low overhead and easily scale and move across physical and cloud architectures," said Mark Coggin, Red Hat senior director of RHEL product marketing.

The concept of containers has been around for a while -- Sun Microsystems was a pioneer with Solaris Zones well over a decade ago. Docker is actually built on another container project, called Linux Containers.

Like a virtual machine, a container can hold an application, freeing the developer of the application from worrying about writing to the underlying system software. Unlike full virtual machines though, a Docker container does not include a full OS, but rather shares the OS of its host, in Docker's case, Linux.

As a result, containers can be faster and less resource heavy than virtual machines, as long as the user is willing to stick to a single platform to provide the shared OS. A full virtual machine may take several minutes to create and launch, whereas as a container can be initiated in a matter of seconds. Containers also offer superior performance for the applications they contain, compared to running the application within a virtual machine, which incurs the overhead of running through the hypervisor.

Docker is estimating that an application running in a container can go twice as fast as one in a virtual machine. Also, more containers can be packed into a single server, because the OS is not duplicated for each application.

Turnbull suggested that the interest that Docker has generated is due in part to its simplicity. It provides an API (application programming interface) that administrators can use to weave Docker images into a larger scripted workflow.

Containers "are a complex technology and require a complex set of configuration and command line use. We provide an interface that wraps all around that and abstract it away for you," Turnbull said.

The development team for the software, which included over 120 volunteer contributors for this release, concentrated on fixing the bugs in the software, as well as cleaning up the code, improving stability, catching up on the documentation and boosting performance.

The developers "will continue to focus on quality until it becomes a defining characteristic of Docker," Hykes wrote.

Many of the improvements in version 0.8 have been around making the software go faster. Images and containers can be removed from a system much more quickly. The Docker daemon starts and stops much more quickly. Building source images is quicker. A new caching layer, which was the most requested feature, eliminates the need to upload an image from disk again, if it hasn't been changed since the last time it was called.

Other improvements include a smaller memory footprint, the ability to create a larger number of containers and the elimination of several race conditions, which should make the software more stable.

The developers did save some time for new features, however.

For instance, Docker 0.8 client provides a small virtual machine, called Boot2Docker, that allows a developer to build a Docker container on an Apple Macintosh OS X workstation.

"It's a big step forward for developers who are doing local testing and development with Docker," Turnbull said. "Developers on OS X can make container, and connect to a Docker server and launch the container from there."

Originally designed to run on Linux, the software is being reconfigured as a plug-in architecture that could allow it to work on other platforms as well, such as Microsoft Windows, through the use of a hypervisor.

The software also supports, for the first time, the experimental BTRFS (B-Tree File System).

Going forward, Docker will be updated once a month, with the next release, 0.9, issued in early March. New editions may or may not have major new features.

"If a feature is merged before the release date, it gets released. Otherwise, the next merge window is only a month away," Hykes wrote.

Version numbering will follow the lead of Linux, in which a change in the first digit represents a major upgrade. An advance in the second digit after the period designates a routine update and the third digit will be for emergency bug fixes and other issues.

Docker is planning for a full production-ready "version 1" release of the software in April.

The company is also investigating various strategies to commercialize the open source technology, which is under an Apache License. Docker plans to develop the services for indexing and signing images as well as for creating private registries for Docker images. It will also offer commercial support for Docker and is considering releasing an enterprise edition of the software as well.

Joab Jackson covers enterprise software and general technology breaking news for The IDG News Service. Follow Joab on Twitter at @Joab_Jackson. Joab's e-mail address is Joab_Jackson@idg.com

Join the newsletter!

Error: Please check your email address.
Rocket to Success - Your 10 Tips for Smarter ERP System Selection

Tags virtualizationRed Hatapplication virtualization

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.

Joab Jackson

IDG News Service
Show Comments

Cool Tech

Breitling Superocean Heritage Chronographe 44

Learn more >

SanDisk MicroSDXC™ for Nintendo® Switch™

Learn more >

Toys for Boys

Family Friendly

Panasonic 4K UHD Blu-Ray Player and Full HD Recorder with Netflix - UBT1GL-K

Learn more >

Stocking Stuffer

Razer DeathAdder Expert Ergonomic Gaming Mouse

Learn more >

Christmas Gift Guide

Click for more ›

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Edwina Hargreaves

WD My Cloud Home

I would recommend this device for families and small businesses who want one safe place to store all their important digital content and a way to easily share it with friends, family, business partners, or customers.

Walid Mikhael

Brother QL-820NWB Professional Label Printer

It’s easy to set up, it’s compact and quiet when printing and to top if off, the print quality is excellent. This is hands down the best printer I’ve used for printing labels.

Ben Ramsden

Sharp PN-40TC1 Huddle Board

Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.

Sarah Ieroianni

Brother QL-820NWB Professional Label Printer

The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.

Ratchada Dunn

Sharp PN-40TC1 Huddle Board

The Huddle Board’s built in program; Sharp Touch Viewing software allows us to easily manipulate and edit our documents (jpegs and PDFs) all at the same time on the dashboard.

George Khoury

Sharp PN-40TC1 Huddle Board

The biggest perks for me would be that it comes with easy to use and comprehensive programs that make the collaboration process a whole lot more intuitive and organic

Featured Content

Product Launch Showcase

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?