VM - Container (Ligthweight VM)

> Virtualization - (Virtual Machine|Container)

1 - About

Containers share an operating system installed on the server and run as resource-isolated processes. Each container has isolated environment within the same OS.

Au contraire real virtualization vm is having another full-fledged OS inside host OS. That's why the are called lightweight VM.

Containers provide a way to package your application's code, configurations, and dependencies into a single object.

It's a kind of very sophisticated and advanced chroot environment.


3 - Software

3.1 - Container

3.2 - Server

4 - Orchestration

Orchestration services on a server helps to build and run containerized applications. See Orchestration

5 - Specification

6 - Advantages

  • Smaller than Virtual Machines: Because images (container on disk) contain only the content needed to run an application (and not always an entire operating systems)
  • Improved performance: Likewise, since you are not running an entirely separate operating system, a container will typically run faster than an application that carries with it the overhead of a whole new virtual machine.
  • Secure: Because a container typically has its own network interfaces, file system, and memory, the application running in that container can be isolated and secured from other activities on a host computer.
  • Multiple environments: With an application’s run time requirements included with the application in the container, a container is capable of being run in multiple environments (Windows, Linux, …)