As máquinas virtuais (VM, Virtual Machines) e os contêineres usam a virtualização para criar ambientes isolados para execução de aplicativos. A principal diferença está na granularidade da virtualização que eles fornecem – as VMs virtualizam no nível de máquina/sistema operacional (SO), enquanto os contêineres virtualizam no nível do software.