Explaination Of the Architecture
Docker
-
An image is an executable package that includes everything needed to run an application–the code, a runtime, libraries, environment variables, and configuration files.
-
A container is launched by running an image.
-
A container is a runtime instance of an image–what the image becomes in memory when executed (that is, an image with state, or a user process).
Virtual Machine
- A virtual Machine is an image of operating system running on Hypervisor over host operating system.
Comparision Basis | Docker | Virtual machine |
Architecture | ||
Build | Only Binaries and libraries of OS over which services run | Image of the entire OS |
Virtualization | OS level virtualization by abstracting user space | Hardware Virtualization |
Processing boundaries | Container have private space for processing, can execute commands as root | Virtual Box have confined space for processing and can execue command as user |
kernel boundaries | Container share host sytstem kernel | Virtual Box share host system kernel with Guest Operating System with Hypervisor |