Sobes.tech
Junior

Jaký je rozdíl mezi Dockerem a virtuálním strojem?

sobes.tech AI

Odpověď od AI

Rozdíl mezi Dockerem a virtuálním strojem spočívá v úrovni virtualizace:

  • Virtuální stroj (VM): Virtualizuje hardware. Každý VM obsahuje plný hostitelský operační systém (OS), který běží nad hypervizorem. To vytváří úplnou izolaci mezi VM, ale vyžaduje značné zdroje (RAM, diskový prostor).
  • Docker: Virtualizuje operační systém na úrovni procesu. Docker kontejnery běží na jednom hostitelském OS, využívají jádro tohoto OS. Obsahují pouze potřebné aplikace, knihovny a závislosti, bez úplného hostitelského OS. To je činí lehčími, přenosnějšími a rychlejšími při spuštění.

Hlavní rozdíly lze shrnout takto:

Vlastnost Virtuální stroj Docker
Úroveň virtualizace Hardware Operační systém (na úrovni procesu)
Obsahuje Plný hostitelský OS Aplikace, závislosti, knihovny
Použití jádra Vlastní jádro hostitelského OS Jádro hostitelského OS
Velikost Gigabajty Megabajty/stovky megabajtů
Čas spuštění Minuty Sekundy
Izolace Kompletní (na úrovni hardwaru) Na úrovni procesů a souborového systému
Zdroje Vysoké (RAM, CPU, disk) Výrazně nižší
Příklad VMware, VirtualBox, KVM Docker, rkt