Solved

In what scenarios is Dockerization used

Posted on 2015-02-18
1
1,009 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 8

Accepted Solution

by:
James Bilous earned 500 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

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

The next five years are sure to bring developments that are just astonishing, and we will continue to try to find the balance between connectivity and security. Here are five major technological developments from the last five years and some predict…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
This Micro Tutorial will explain how to export DynamoDB tables in Amazon Web Services.

726 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