Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1330
  • Last Modified:

In what scenarios is Dockerization used

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
Anthony Lucia
Asked:
Anthony Lucia
1 Solution
 
James BilousSoftware EngineerCommented:
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
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now