With DockerCon upon us, it’s clear that Docker is the brand in our community. Just like we “Uber” everything and make “Xerox” copies, most people refer to “Docker” when discussions turn to containers. Consider that Docker surpassed 2 billion container downloads as of February 2016 and that DockerCon 2016 is the largest ever with more than 4000 registered attendees.
Surveys are everywhere showing a clear direction towards mainstream adoption of containers. Gartner, for example, says that through 2018, more than 70 percent of IT organizations planning a private PaaS will deploy a container service. And 76% of businesses stated that they were considering deploying their apps on containers in a recent SDXCentral survey.
Too many choices?
Docker has brand recognition, but what about the multitude of operating system, runtime, and orchestration choices? Should you use the smiley whale from floor to ceiling and go all Docker? What if you make the “wrong” choice and another container format ultimately wins? Should you wait for the muddy waters to clear? There’s no need to be paralyzed by such apparently risky decisions.
Container technology is going mainstream and there is much to gain by learning to swim in the sea. Rather than diving in with abandon, swim one stroke at a time. Start with a couple of basic apps and try a container stack based on your background and requirements. The open source ecosystem lets you choose from a wide array of tools:
Operating system. Options include CentOS, CoreOS, Red Hat, SuSE, Ubuntu, Windows, and more. Mainstream operating systems now support container runtimes, leveraging core technologies like Linux cgroups and namespace. Look out for exaggerated security fears. Pick the OS you’re most familiar with to start experimenting. OS vendors have released lots of information on container security.
Container runtime. You’ll see choices from Canonical, CoreOS, Docker, and more. Choose the runtime that you can most easily onboard your application with. Swim a little and course correct with another runtime if you find it’s not working for you.
Container orchestration. This is a subject of our other blogs due to the variety of devops workflows and user experiences. While choices include Cloud Foundry, Docker UCP, Kubernetes, Mesos, and Rancher, you may begin deploying containers manually and with scripts to check the wave height before choosing your boat.
Two sides to every coin
The bright side to adopting container technology early includes expanding your skillset and becoming more competitive with new devops and infrastructure processes. You may see a downside in having to repackage the first couple of apps if your initial container stack decision doesn’t work out. That may be annoying in the moment, but you will have gained experience while limiting risk.
This is an exciting time in the container industry – we are witnessing the emergence of the next great application platform. We’re doing our part at Diamanti to spur mainstream container adoption by making it fast and easy to deploy applications into production with guaranteed performance. Onboarding applications to Diamanti is easy because we work with standard container images and require no code changes. If you’re working with Cassandra, Kafka, MongoDB, or other data tier workloads, check out our network and storage virtualization capabilities.
Let’s get moving – start small, adjust as you learn, and get rewarded early!
See you at DockerCon 2016 in Seattle!
Mark
@markbalch