Saltar al contenido
Tipos de hosting 2 min

Máquina virtual vs contenedor

En una frase

La VM virtualiza un ordenador entero con su propio sistema operativo; el contenedor comparte el del host y solo empaqueta tu aplicación. El contenedor es más ligero.

Qué es Máquina virtual vs contenedor

Una máquina virtual (VM) emula un equipo completo: hardware virtual y un sistema operativo propio sobre un hipervisor. Un contenedor empaqueta solo una aplicación y sus dependencias, compartiendo el núcleo del sistema operativo del servidor anfitrión. Por eso un contenedor arranca en segundos y pesa megas, mientras una VM pesa gigas y tarda más.

Cómo funciona

En virtualización, el hipervisor reparte el hardware entre varias VM aisladas. En contenedores, un motor como Docker aísla procesos usando funciones del kernel (namespaces, cgroups): mucho menos sobrecoste, pero menos aislamiento. A menudo se combinan: contenedores corriendo dentro de VM.

Cuándo usarlo

VM: cuando necesitas otro sistema operativo, aislamiento fuerte o ejecutar software "como en un PC propio". Contenedor: para desplegar aplicaciones de forma rápida, reproducible y escalable, sobre todo con microservicios.

Datos curiosos

  • Docker popularizó los contenedores a partir de 2013, aunque la tecnología base es más antigua.
  • Una VM puede tardar minutos en arrancar; un contenedor, segundos.
  • Por seguridad, hay contenedores "endurecidos" o ejecutados dentro de microVM (gVisor, Firecracker).

Preguntas frecuentes

¿Cuál es más seguro?

La VM, por norma general: aísla a nivel de hardware virtual. El contenedor comparte kernel, así que un fallo en él afecta a más.

¿Puedo usar ambos?

Sí, es lo habitual: contenedores corriendo dentro de máquinas virtuales.

¿Cuál pesa menos?

El contenedor: solo tu app y sus dependencias, sin un sistema operativo completo dentro.