A smooth running production environment is a beautiful thing. But how do we get there? And how do we ensure that all of our production, staging/test, and development environments stay in sync in order to get there? Today, it seems like everyone in software development is talking about Docker and containers. In fact, according to the 2016 State of the Cloud Survey by RightScale, Docker adoption doubled from 13% to 27% in just one year. Furthermore, 35% of the organizations surveyed reported that they have plans to adopt it soon.
Why has Docker adoption skyrocketed and how can those using Bamboo for continuous deployment reap the benefits? Check out three reasons why developers love Docker, and how it can provide value for your dev team.
What are Containers?
A Docker container packages software in a complete filesystem with everything it needs to run – such as code, runtime, system tools, system libraries – guaranteeing that it'll always run the same on any environment. Docker is all about creating consistency and encouraging collaboration. It revolutionizes how we share our environments the same way Git has changed code collaboration. At its core, Docker is about utilizing the least amount of operating system resources and dependencies needed to run an application. This focus on maximizing efficiency leads to a painless, more collaborative, and seamlessly integrated environment to test and deploy applications.
1. Test without surprises
A crucial part of the development process is testing, whether on a local machine or in a virtual dev environment. With containers, every environment is exactly the same so changes and unexpected dependencies won't interfere with testing – saving developers time and energy from tweaking problematic environments and instances.
Running containers on your local machine using Docker Quickstart Terminal lets you test in a consistent environment.
2. Collaborate with consistency
Unexpected dependencies are already a hassle for one developer and becomes an even bigger headache when other devs enter the picture. Unknowns in an environment are amplified with each new team member – who knows what's on their machine or which version of Java they're running? With Docker, consistency facilitates collaboration. By starting with a known configuration in a common container, devs are always on the same page about which version to use; it's right there in the container.
Share your Docker Images with a registry like Docker Hub.
3. Integrate with Atlassian
Atlassian, the leader in enterprise software for collaboration and issue tracking, is the perfect complement to Docker. By pairing Docker's consistency with Atlassian's integration and automation, collaboration between development and IT ops becomes seamless. Using the new Docker Hub 2.0 with Atlassian's Bamboo, source code can be automatically built and deployed to an identical development, test, or even production environment. No more requesting environments from the IT ops teams; triggers will automatically fire from your approved pull request in Bitbucket to spin up a lightweight container in your QA environment almost instantly. Without the excess back and forth, you can go from source code to a running application in minutes.
The Docker Task in Atlassian's Bamboo let's you run, build and deploy images and containers with ease.
Docker is picking up a lot of traction today and rightly so. Docker containers provide consistency in the turbulent world of software development environments. They allow dev and operations teams to get customers the applications they need now – all while providing a consistent environment that makes working together a whole lot easier.
To learn more about how Docker and Atlassian can help your dev team work faster and smarter, contact Praecipio Consulting.
About Brendan Kelly
Brendan is a Consultant & Solutions Specialist at Praecipio Consulting where he enables the sales team through technical discovery, training and product demos. When Brendan isn't delivering best-in-class business technology solutions, he can be found in the Austin Green Belt hiking and bouldering.