Docker gives you application portability, sort of
Theoretically, Docker allows developers to move applications across multiple clouds, on-premises systems or VMs without a lot of refactoring or reengineering.
In fact, a survey of 745 IT professionals found that the top reason IT organizations are adopting Docker containers is to build a hybrid cloud. Application portability not only means less manual work for developers and systems engineers, but it also can help IT leaders minimize vendor lock-in and shorten cloud migration timetables.
This cross-cloud functionality is useful, but it's not foolproof. Docker works by "demanding" certain CPU and memory from the underlying infrastructure, but there is no built-in tool to devote specific resources, since it is not aware of all the resources under use. In other words, you can't be sure that your container is running efficiently when you don't know if your hosts have enough available space.
There are currently a few Docker orchestration tools on the market that will decide which resources are available on which hosts, but they are for the most part untried by enterprise IT departments. This functionality would be crucial for mission-critical production websites that have to maintain high availability. Every day there are more third party applications that are specifically looking at security, resource management, load balancing, and resource management, and we expect to see their success accelerate.
(Image: DSGpro/iStockphoto)