Containers en virtuele machines (VM's) bieden beide geïsoleerde omgevingen, maar werken anders: containers delen de kernel van het host-besturingssysteem (lichtgewicht), terwijl VM's een volledig gastbesturingssysteem op gevirtualiseerde hardware uitvoeren (zwaarder). Het begrijpen van het verschil verklaart waarom containers zo efficiënt zijn.
Waarom het belangrijk is
VIRTUAL MACHINE: CONTAINER:
┌─────────────────┐ ┌─────────────────┐
│ App + Libs │ │ App + Libs │
│ GUEST OS (full)│ ← full OS each │ (shares kernel) │ ← no guest OS
├─────────────────┤ ├─────────────────┤
│ Hypervisor │ │ Docker Engine │
├─────────────────┤ ├─────────────────┤
│ Host OS │ │ Host OS │
│ Hardware │ │ Hardware │
└─────────────────┘ └─────────────────┘
