Over a million developers have joined DZone.

Top 5 Use Cases for Docker Adoption

This blog represents top 5 use cases why IT enterprises (product & software-service vendors) should consider adopting Dockers in their SDLC.

· DevOps Zone

The DevOps Zone is brought to you in partnership with Sonatype Nexus. The Nexus Suite helps scale your DevOps delivery with continuous component intelligence integrated into development tools, including Eclipse, IntelliJ, Jenkins, Bamboo, SonarQube and more. Schedule a demo today

  1. Quicker developer onboarding onto projects: We are all aware of development environment setup related issues when taking about onboarding developers. In my recent experience, I almost spent a week getting manually set up for a new project comprising of just 3-4 members. I had to refer to a couple of documents which were last updated a few weeks beforehand, and thus were not up to date. This led to productivity loss. In my earlier experience, I saw the usage of VM images for developer onboarding. This worked very well. However, we all know that VMs are bulky and it would be very cumbersome to set up production-like environments using VMs for every developer, where one many need to have multiple instances of web servers, databases, load balancers, etc. This has been made very easy with Docker containers. One could achieve automated production-like setup using Docker, Ansible, and shell scripting. And, it becomes extremely fast to dump and recreate these environments owing to the fact that Docker is very lightweight.

  2. Consistent and testable application environments from development to testing to staging to production: Owing to the fact that Docker provides isolated environment for application and its dependencies/binaries to run, it becomes simpler and easier to download Docker images from a local repository and run the related container in different environments.

  3. Safely run legacy and new apps on the same server: Given the fact that Docker provides isolated environments for applications to run, one could easily run legacy and new apps on the same server. Take for an instance the example where a web application developed in the past has been tested to run on Java 5 and Tomcat 7. However, as part of business needs, it will have to use Java 8 and Tomcat 8 for new applications. Trying to run these two applications on a server is extremely difficult. One may need two different bulky VMs to achieve this. However, with Docker, it’s extremely fast and easy.

  4. Easier to migrate to SOA over a period of time: When planning to migrate to SOA, Docker is very handy. One can extract microservices from existing bulky applications, create a Docker container for applications, including specific dependencies, deploy on the same (environment isolation) or different server, and allow other applications to access this new service.

  5. Easier management of horizontal scalability and elasticity: It makes it very easy and fast to start new containers on remote boxes using automation tools such as Ansible/Chef/Puppet etc.

The DevOps Zone is brought to you in partnership with Sonatype Nexus. Use the Nexus Suite to automate your software supply chain and ensure you're using the highest quality open source components at every step of the development lifecycle. Get Nexus today

Topics:
docker

Published at DZone with permission of Ajitesh Kumar, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}