?
Solved

In what scenarios is Dockerization used

Posted on 2015-02-18
1
Medium Priority
?
1,178 Views
Last Modified: 2015-02-19
I understand that on an OS, you can spin off a container steperate from the OS to run an application, and that the application becomes completely separate from the OS itself at that point.

In what scenarios is this used

Is it used for PaaS in a cloud,  (If so, in which systems)

Is it used in Enterprise situations to replace VMWare, etc

Whhen and why would you used Dockerization

Thanks
0
Comment
Question by:Anthony Lucia
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 9

Accepted Solution

by:
James Bilous earned 2000 total points
ID: 40616990
Docker is an infrastructure management solution. The point of docker is to bundle your disk image with your application image to remove traditional discrepencies between deployment, testing, and development environments.

Historically, when you develop an app you need to manage your servers and your application separately. For example, lets say you want to develop a NodeJS app. You would install NPM, NodeJS, and all your dependencies on your local machine for testing and development. Then, when you wanted to deploy, you would go to a cloud  provider like DigitalOcean and ask for a VM with a preinstalled OS on it. They may provide you with a different OS like CentOS, or an older / newer version of Ubuntu, and you would then have to go in and set up your server with all the nodeJS dependencies that you have on your home server, trying to get it as close to your dev machine as possible.

You can see that there are parts of your app that would need to adapt to differences in platform between your development and deployment machine. Finally, you use some sort of deployment scripts to make sure your dependencies / code paths in your app correctly adapt to your new environment. Perhaps you need to use an older version of some library because the server on which you deploy does not support the newest version that your development machine does. etc.

This is all a headache and dockerization attempts to solve this problem by wrapping up your ENTIRE disk image, not just an app itself. Think of it like Git for your development environment. Now instead of deploying your app on a server, you deploy your entire disk image which contains your app and dependencies. You are guaranteed that your app will run the same after its deployed because it is running on a mirror copy of your development disk that is simply being run on a more robust server that can handle all the traffic and can be managed.
0

Featured Post

Will your db performance match your db growth?

In Percona’s white paper “Performance at Scale: Keeping Your Database on Its Toes,” we take a high-level approach to what you need to think about when planning for database scalability.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When speed and performance are vital to revenue, companies must have complete confidence in their cloud environment.
In the first part of this tutorial we will cover the prerequisites for installing SQL Server vNext on Linux.
Connecting to an Amazon Linux EC2 Instance from Windows Using PuTTY.
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Suggested Courses
Course of the Month15 days, 14 hours left to enroll

741 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question