Container technology is speeding up release cycles and making developers' jobs a little easier. However, the technology is still young, and many developers and IT managers are still trying to get a sense of its capabilities and limitations.
That's the key finding from a survey of 300 software developers, released by Shippable. In the survey, 74 percent say they are shipping software faster because of containers, which enclose code in a layer of software that can be transported easily between computers.
Developers are increasing their use of containers to power new and prospective applications. Container technology has become more popular as developers search for tools that accelerate release cycles and improve application flexibility.
Along with speedier software delivery, another 17 percent said containers enabled them to get jobs done with fewer developers. More than half (52 percent) are using containers in production for new applications, and at least 14 percent said they're using containers in development/test environments.
Meanwhile, 89 percent said they're "very likely" or "somewhat likely" to increase use of containers in the next 12 months.
The survey also uncovered some roadblocks to widespread container adoption. Among developers not using containers today, the most common reason is they don't have the necessary technology skills in-house. The second most common reason given was that container technology is still too immature.
Other developers said their infrastructure is not designed to work with containers; they were concerned about the security risks; and container technology ROI is still unproven.
That said, David Linthicum posted a piece a couple months back that cautioned enterprise users on the potential highs and lows of moving into a relatively new approach such as containers. "Containers don't solve all problems," he notes. "Enterprises need to make sure their eyes are wide open as they move to the technology." Dave's advice:
- Containers are generally safe, but keep an eye on their security implications.
- It may not be worth the hassle to containerize many applications. They're "either too coupled, or too decoupled from the data or other application components." It may be worthwhile to apply some of the lessons learned in the cloud space here, Dave adds.
- It takes certain skills to build and work with containers.
- Test, test and test again. Scalability, stability, data management, governance and security implications need to be thoroughly understood.
- Containers are not a strategy, rather they support larger strategies, especially cloud.
Container adoption is tightly coupled to an overall cloud strategy, the Shippable survey finds. The majority of respondents (31 percent) said they are running containers on public cloud infrastructure, while 30 percent run them on private clouds, and 17 percent on hybrid clouds. Only two percent use containers in traditional on-premises systems.
Google Compute Engine ranks as the leading public cloud service for contianerized applications (used by 52 percent of developers), while 49 percent are running on Microsoft Azure and 43 percent on Amazon Web Services.
Development platforms in use for containers include GitHub (58 percent), with another 27 percent using Atlassian, 23 percent using Jenkins, 23 percent using Puppet and 19 percent using Chef.