Docker is on everyone’s minds as a potential way to improve packaging and shipping of applications. Here’s what you need to know.
- Docker allows for packaging and distribution of applications.
- Docker isn’t a completely new idea.
- You don’t have to use Linux.
- It’s much faster than starting a VM.
- Virtual machines aren’t yet obsolete.
- Docker’s adaptation is incredibly fast.
- Wade before you dive.
Docker has risen to incredible prominence since it was first introduced as an open source project in 2013. In fact, as of March, it was either in use or in the planning stages for nearly half of companies, notes Forbes. At the time, it had been adopted by more than one in eight companies (13%), while 35% were preparing to implement it.
There’s a tendency to forgive technologies for their weaknesses as they start to become a more standard choice. It’s necessary to look at Docker from all angles.
Here are a few things to understand about this container technology:
Docker allows for packaging and distribution of applications.
There are many bits and pieces of software in 2015 – such as libraries, configuration files, binaries, and dependencies. That means things can become excessively complicated when you start to think about shipping. It’s necessary to figure out how to create the best package and make sure that all components are in the right locations for smooth operation. These concerns are important so that the developer can package everything and send it to another person on her team, to production, or anywhere else.
Docker isn’t a completely new idea.
Docker is new, but containers are not, notes Matt Asay of TechRepublic. “While containers proved useful in the mainframe era, Docker has hit its stride now due to a confluence of factors,” he says, “including the prominence of Linux, the spread of virtualization, and the cloud’s erosion of the importance of operating systems.”
You don’t have to use Linux.
Windows realized that Docker and other emerging container tools were important enough to integrate the capability into their system. Docker was built using Linux, so it relies on Linux Containers (LXC), along with the namespaces and groups features. Microsoft had to develop hooks to allow Windows cloud server to work with Docker – as indicated by Asay in March. That’s essentially a recognition that its own containerization option was an inadequate substitute.
Fast-forward to November and we see the fruit of Microsoft’s labor. Windows Server 2016 “addresses growing demand for running Docker containers on Windows while also supporting existing Windows applications and technologies,” notes George Leopold of EnterpriseTech. “Microsoft noted this summer that it modified about 180,000 lines of code to allow the Docker Engine runtime (the operating system running inside the container) to operate.”
Like virtual machines, Docker allows you to establish disk resources, CPU, and RAM for each task. The ability to divide resources into pieces so that a single process doesn’t grab all the fuel is a huge advantage of virtualization. With Docker, though, you don’t entail the expense of VMware.
It’s much faster than starting a VM.
The conventional way to handle different processes with one server is to create several virtual machines, one to handle each job. It takes a while to get a VM up and running though because its OS has to start – which can take minutes. Plus, since each virtual machine has its own operating system, you consume a lot of energy. Containers meet the same basic needs of separation almost instantaneously – less than a second. Resources are conserved too.
Virtual machines aren’t yet obsolete.
While Docker has some of the same strengths as VMs, it’s not a straight “new and improved” replacement because all containers are operating within the same OS. Because of that, you can’t run both Linux and Windows applications in the same Docker environment, explains Asay. “Plus, as Docker containers currently stand, they offer much weaker security isolation than VMs,” he adds, “making them inappropriate options for some types of multi-tenancy.”
Docker’s adaptation is incredibly fast.
Docker development is moving at an absurdly rapid pace. The API, which is just over two years old, is now in its 19th revision. While that’s the case, it should be understood that Docker has not yet reached maturity. Also, many enterprises want to know that they will get at least a decade of support with software, and Docker doesn’t offer that currently.
Wade before you dive.
Be careful about fully embracing Docker from the outset. In terms of the code, it’s helpful to learn the best way to work with the system, notes Asay. Plus, “Docker’s community may not be a fit for you,” he says. “You should join the community — attend meetups, read and participate on mailing lists, etc. — and decide … whether Docker is where you want to invest your time.”
Docker Cloud Hosting
Do you want to start testing Docker, or are you ready to put it into action? With Atlantic.Net’s One-Click Docker Hosting, your cloud server will be up and running with Docker already installed in under 30 seconds.