Get started Bring yourself up to speed with our introductory content.

Why is Docker's container approach so important?

Docker's name has become synonymous with containers, but there are other container management tools available.

Docker isn’t container virtualization. Docker's container approach is an open source platform that can help administrators automate application deployment in containers. Tools like Docker rely on a container layer implemented in Linux through components including LXC (Linux Containers), libvirt or systemd-nspawn. Docker does include its own library for containerization called libcontainer. Other container approaches include cgroups, Checkpoint/Restore for Linux in userspace (CRIU), and Kubernetes.

The reason that Docker's container platform has garnered so much attention across the industry is that it provides a single platform that can effectively assemble and manage an application and all of its dependencies into a single package that can be placed into a container and run on any Linux server. The way Docker packages the application allows it to run on-premises, in a private cloud, in the public cloud, and so on. So Docker provides enormous application flexibility and portability – it’s these attributes that have attracted the attention of so many enterprise adopters.

For example, Docker is integrated into major cloud providers like Amazon Web Services (AWS), Google Cloud Platform and Microsoft Azure along with leading cloud infrastructure tools like Cloud Foundry Diego, OpenStack Nova, OpenSVC, Chef, Puppet, Salt and others. Docker may eventually be integrated into Red Hat’s OpenShift Origin platform.

Although Docker's container platform is currently focused on Linux environments, there is an initiative called the Open Container Project (OCP) underway to create a vendor-neutral standard that supports multiple operating systems. So ideally a software developer should be able to package an application and know that it will run with Docker, rkt from CoreOS, or other projects like the Jetpack runtime for FreeBSD and Apcera’s Kurma container environment. The idea is to create a single uniform container environment rather than create multiple competing (and incompatible) environments.

Containers offer new opportunities for software developers and data center operators, but containers also pose new challenges that should be understood and addressed. The good news is that container technology is not exclusive. Containers are simply another tool in the virtualization toolbox – it can coexist with current hypervisor-based virtualization in the same environment, allowing administrators and developers to experiment with and embrace containers at a comfortable pace. 

Next Steps

Docker orchestration tools and scalability

Docker and Kubernetes introduce a new era of container technology

Exploring container limitations in cloud development

This was last published in September 2015

Dig Deeper on IT Ops Implications of Continuous Delivery

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.