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 |

