3. Virtual Machines Explained
• A virtual computer system is known as a “virtual machine” (VM): a
tightly isolated software container with an operating system and
application inside.
• Each self-contained VM is completely independent. Putting multiple
VMs on a single computer enables several operating systems and
applications to run on just one physical server, or “host.”
• A thin layer of software called a “hypervisor” decouples the virtual
machines from the host and dynamically allocates computing
resources to each virtual machine as needed.
9. What is
Docker?
• Docker is a tool that allows developers, sys-admins
etc. to easily deploy their applications in a sandbox
(called containers) to run on the host operating
system i.e. Linux. The key benefit of Docker is that it
allows users to package an application with all of its
dependencies into a standardized unit for software
development
• Docker containers are lightweight alternatives to
virtual machines and it uses the host OS.
• You don’t have to pre-allocate any RAM in
containers.
12. Containers
Containers are an abstraction at the app layer
that packages code and dependencies together.
Multiple containers can run on the same machine
and share the OS kernel with other containers,
each running as isolated processes in user space.
Containers take up less space than VMs
(container images are typically tens of MBs in
size), and start almost instantly.