Skip to main content

Why Is Docker so Important?

Docker containers are like B.A.T. bots (read: G.I. Joe Battle Android Troopers) spreading everywhere and powering developers world-wide to automate deployment of applications as a lightweight, portable, self-sufficient containers that will run virtually everywhere. World is buzzing about this new technology and it is really taking wings with each passing day now. An open source project used by the biggest companies of the world even from the earliest versions is an amazing achievement and something to really look at.
So why is this Docker thing so revolutionary? We have seen containers of all sorts in the past, like free-BSD jails, Solaris zones, LXC-based Linux Containers and so on. Nevertheless, this one is something that is not built for geeks only (like olden days command line freaks), but also for enterprise customers and with a pinch of very interesting features. Let’s see the top 4 reasons why Docker could change (and is changing already) the cloud computing scenario world-wide:

4 reasons why Docker could change the cloud computing scenario world-wide

Abstraction: Docker simplifies the way we work with software. While a Virtual Machine is a whole other guest computer running on top of your host computer (sitting on top of a layer of Virtualization), Docker is an isolated portion of the host computer, sharing the host kernel (OS) and even its binaries/libraries if appropriate. To put it in an over-simplified way, if I run a CoreOS host server and have a guest Docker Container based off of Ubuntu, the Docker Container contains the parts that make Ubuntu different from CoreOS.

how are they different

It replaces sandboxing with containerization and also provides a multi-language, agile, and cost effective solution that provides developers with the flexibility needed to support a growing number of frameworks and applications. So this is actually hitting hard on VMs and proving highly useful for moving applications from expensive VMs to cheap containers. Docker, however, is built on top of LXC. Like with any container technology, as far as the program is concerned, it has its own file system, storage, CPU, RAM, and so on. The key difference between containers and VMs is that while the hypervisor abstracts an entire device, containers just abstract the operating system kernel. Take a look at the image above and you will have a better idea what I do really mean. This means a lot for end-users, and this gets us to its next awesome feature.
Resource-saver: As we have just seen, Docker use a shared kernel. That means they are way more efficient than hypervisors in system resource terms. Instead of virtualizing hardware, containers rest on top of a single Linux instance. This in turn means you can leave behind the useless 99.9% VM junk, leaving you with a small, neat capsule containing your application. With a perfectly tuned container system, you can have as many as four-to-six times the number of server application instances as you could using Xen or KVM on the same hardware. Sounds great, doesn’t it? It’s easy to deploy and also avoid malpractices like in cases where your application requires the same OS and libs, but developers will have 10 different VMs using the very same environment, thus increasing resources, complexity and the costs too. Now with Docker you can have all of them on a single server instance and use it easily. If multiple copies of the same application are what you want, then you’ll love containers. This move can save a data center or cloud provider tens-of-millions of dollars annually in power and hardware costs. It’s no wonder that they’re rushing to adopt it as fast as possible.
Portability and Cloud-Ready: This is the major keyword that is responsible for the bull run. Developers can use Docker to pack, ship, and run any application as a lightweight, portable, self-sufficient LXC container that can run virtually anywhere. Container gives you instant application portability that has low overhead and easily scale and move across physical and cloud architectures. Due to this there is significant push in the software community to adopt Docker. This push is so strong that companies like Amazon, Microsoft, and Google have all worked together to contribute to its development and adopt it in their own cloud offerings. Even these companies, that are typically so at odds, have come together to support an open source project instead of developing and releasing their own solutions. Let that sink in for a moment. This is one of those occasions where the bleeding edge has developed so quickly that established technology giants have already integrated Docker into their production Cloud offerings. This rapid adoption, by even the most cautions companies with so much to lose, should help to eliminate the concern that the technology is unproven or too risky to adopt at home or in smaller firms.
Devops-Ready: DevOps professionals appreciate Docker as it makes it extremely easy to manage the deployment of complex distributed applications. Docker also manages to unify the DevOps community whether you are a Chef fan, Puppet enthusiast, or Ansible aficionado.

docker relationships
docker relationships

Docker is not a replacement for these technologies nor the organization want it to be. Instead, Docker, for example, abstracts the complexity of configuration management like Puppet. Shell scripts become unnecessary. Instead, it can be used for small or large deployments. It makes the new stack becomes more tangible. More so, it’s a catalyst for moving to lightweight services which are far more applicable to this new stack world than heavyweight, legacy technologies.
Someone rightly put an analogy here: just like GitHub stimulated collaboration and innovation by making source code shareable, Docker Hub, Official Repos and commercial support are helping enterprises answer this challenge by improving the way they package, deploy and manage applications.
So, as you see Docker is just an awesome technology, and you should really get started learning it now to integrate it into your developing process. Like you, CloudAcademy has a couple courses to get started with Docker and to learn the more advanced concepts, and they are available to all of our members. Ensure to follow them carefully, then start playing with this amazing software.

Written by

An avid learner, technical evangelist and adventurous.I love to talk about scalability. Self-starter with a proven track record in systems administration, programming, security, networking, monitoring, scripting and automation.Exceptionally strong passions for Unix Systems, Coding and Automation.Strongly advocate standardization of technologies, automation, industry best practices, standard repeatable deployments, proactive monitoring and writing generic utilities and reusable code.

Related Posts

Albert Qian
— August 28, 2018

Introducing Assessment Cycles

Today, cloud technology platforms and best practices around them move faster than ever, resulting in a paradigm shift for how organizations onboard and train their employees. While assessing employee skills on an annual basis might have sufficed a decade ago, the reality is that organiz...

Read more
  • Cloud Computing
  • Product Feature
  • Skill Profiles
— July 31, 2018

Cloud Skills: Transforming Your Teams with Technology and Data

How building Cloud Academy helped us understand the challenges of transforming large teams, and how data and planning can help with your cloud transformation.When we started Cloud Academy a few years ago, our founding team knew that cloud was going to be a revolution for the IT indu...

Read more
  • Cloud Computing
  • Skill Profiles
— June 26, 2018

Disadvantages of Cloud Computing

If you want to deliver digital services of any kind, you’ll need to compute resources including CPU, memory, storage, and network connectivity. Which resources you choose for your delivery, cloud-based or local, is up to you. But you’ll definitely want to do your homework first.Cloud ...

Read more
  • AWS
  • Azure
  • Cloud Computing
  • Google Cloud
Albert Qian
— May 23, 2018

Announcing Skill Profiles Beta

Now that you’ve decided to invest in the cloud, one of your chief concerns might be maximizing your investment. With little time to align resources with your vision, how do you objectively know the capabilities of your teams?By partnering with hundreds of enterprise organizations, we’...

Read more
  • Cloud Computing
  • Product Feature
  • Skill Profiles
— April 5, 2018

A New Paradigm for Cloud Training is Needed (and Other Insights We Can Democratize)

It’s no secret that cloud, its supporting technologies, and the capabilities it unlocks is disrupting IT. Whether you’re cloud-first, multi-cloud, or migrating workload by workload, every step up the ever-changing cloud capability curve depends on your people, your technology, and your ...

Read more
  • Cloud Computing
— March 29, 2018

What is Chaos Engineering? Failure Becomes Reliability

In the IT world, failure is inevitable. A server might go down, an app may fail, etc. Does your team know what to do during a major outage? Do you know what instances may cause a larger systems failure? Chaos engineering, or chaos as a service, will help you fail responsibly.It almost...

Read more
  • Cloud Computing
  • DevOps
— November 22, 2017

AWS re:Invent 2017: Themes and Tools Shaping Cloud Computing in 2018

As the sixth annual re:Invent approaches, it’s a good time to look back at how the industry has progressed over the past year. How have last year’s trends held up, and what new trends are on the horizon? Where is AWS investing with its products and services? How are enterprises respondi...

Read more
  • AWS
  • Cloud Adoption
  • Cloud Computing
  • reInvent17
— October 27, 2017

Cloud Academy at Cloud Expo Santa Clara, Oct 31 – Nov 2

71% of IT decision-makers believe that a lack of cloud expertise in their organizations has resulted in lost revenue.1  That’s why building a culture of cloud—and the common language and skills to support cloud-first—is so important for companies who want to stay ahead of the transfor...

Read more
  • Cloud Computing
  • Events
— October 24, 2017

Product News: Announcing Cloud Academy Exams, Improved Filtering & Navigation, and More

At Cloud Academy, we’re obsessed with creating value for the organizations who trust us as the single source for the learning, practice, and collaboration that enables a culture of cloud.Today, we’re excited to announce the general availability of several new features in our Content L...

Read more
  • Cloud Computing
— August 29, 2017

On 'the public understanding of encryption' Tweet by Paul Johnston

Some of the questions by journalists about encryption prove they don't get it. Politicians don't seem to get it either (most of them). In fact, outside technology, there are some ridiculous notions of what encryption means. Over and over again, the same rubbish around encrypti...

Read more
  • Cloud Computing
— July 13, 2017

Our Hands-on Labs have a new look

Building new hands-on labs and improving our existing labs is a major focus of Cloud Academy for 2017 and beyond. If you search "types of adult learning," you will get approximately 16.9 gazillion hits. Many will boast about how they meet the needs of a certain type of learner (up to 70...

Read more
  • Cloud Computing
  • hands-on labs
— July 11, 2017

New infographic: Cloud computing in 2017

With 83% of businesses ranking cloud skills as critical for digital transformation in 2017, it’s great news for anyone with cloud architecting experience, and for those considering a career in cloud computing. In our new infographic, we compiled some of the latest industry research to l...

Read more
  • Cloud Computing