-1

I read over internet "containers wrap up a piece of software in a complete filesystem that contains everything it needs to run: code, runtime, system tools, system libraries – anything you can install on a server".

I also read that linux containers cannot run on windows.

The benifits of containers stated "Containers run as an isolated process in userspace on the host operating system."

I don't understand if the containers are not platform independent what we are actually achieving out it?

1) Anyhow all the applications on a linux box should run as an isolated process in their userspace.

2) If containers only contain app code + runtimes + tools + libraries. They can be shipped together. What conatiners are getting here?

Kumar
  • 1,536
  • 2
  • 23
  • 33
  • 1
    Yes, of course you can run a Linux Docker container on a Windows host. – paulsm4 May 26 '16 at 05:15
  • @paulsm4: I read it here http://windowsitpro.com/windows-server-2016/can-you-run-linux-containers-windows-server – Kumar May 26 '16 at 05:18
  • @paulsm4: Even if it is supported on Windows, the point is containers are not platform independent by itself. – Kumar May 26 '16 at 05:19
  • 1
    Suppose there is an enterprise with thousands of employees and all of them work on Visual Studio C++. Now, the administrator can create a container with the installed (only C++ components) and configured VS, and deploy that container to all employees. The employees can instantly start working without bothering about installation and configuration of the application. Again, if the employee somehow corrupts the application, they only need to download the container again and they are good to go. – Abhineet May 26 '16 at 05:26
  • Just one of the use-case on same paltform. – Abhineet May 26 '16 at 05:27
  • @Abhineet: 1) I think, I got answer for my first question. This means that without the container, administrator would have provided VS installer and C++ components, the developer would have to install them manually. But with container, they have got a pre-installed image. Is my understanding correct? 2) Are container platform independent? – Kumar May 26 '16 at 05:37

2 Answers2

3

Posting the comment as answer::

If containers only contain app code + runtimes + tools + libraries. They can be shipped together. What conatiners are getting here?

Suppose there is an enterprise with thousands of employees and all of them work on Visual Studio C++. Now, the administrator can create a container with the installed (only C++ components) and configured VS, and deploy that container to all employees. The employees can instantly start working without bothering about installation and configuration of the application. Again, if the employee somehow corrupts the application, they only need to download the container again and they are good to go.

  • Sandboxing
  • Security
  • Maintenance
  • Mobility
  • Backup
  • Many more to go.

Are container platform independent?

IMHO, I don't think so, as they rely on the system calls. Though, I am open to other concepts if anybody knows better on this topic.

Community
  • 1
  • 1
Abhineet
  • 5,320
  • 1
  • 25
  • 43
  • This means that without the container, administrator would have provided VS installer and C++ components, the developer would have to install them manually. But with container, they have got a pre-installed image. Is my understanding correct? – Kumar May 26 '16 at 15:10
2

Even only considering one platform, containers have their advantages; just not perhaps the ones you need right now. :-) Containers help in administration/maintenance of complex IT systems. With containers you can easily isolate applications, their configuration, and their users, to achieve:

  1. Better security (if someone breaks in, damage is usually limited to one container)
  2. Better safety (if something breaks, or e.g. you make an error, only applications in a given container will be victim to this)
  3. Easier management (containers can be started/stopped separately, can be transferred to another hosts (granted: host with the same OS; in case of Linux containers the host must also be Linux))
  4. Easier testing (you can create and dispose-off containers at will, anytime)
  5. Lighter backup (you can backup just the container; not the whole host)
  6. Some form of increasing availaibility (by proper pre-configuration and automatic switching a container over to another host you can be up and running quicker in case of the primary host failure)

...just to name the first advantages coming to mind.

Artur Opalinski
  • 1,052
  • 7
  • 12