¿Qué problema resuelve Docker?
Opciones
- El 'en mi máquina funciona': la app corre igual en todas partes (Opción correcta)
- Hace que el código compile más rápido en todas las máquinas
- Reemplaza la base de datos por una embebida más ligera
- Escribe los tests de la aplicación por los desarrolladores
Respuesta
El problema de 'en mi máquina funciona': empaqueta una app con todo lo que necesita, para que corra igual en todas partes
Por qué
Sin Docker, una app depende de lo instalado en cada computadora (versión de Java, librerías, ajustes). Las diferencias causan errores.
Docker empaqueta la app y sus dependencias en una imagen; ejecutar esa imagen da un contenedor que se comporta igual en tu laptop, en la computadora de un compañero y en un servidor.
Los contenedores son más ligeros que las máquinas virtuales porque comparten el kernel del sistema operativo del host.
Recuerda
Docker = empaqueta una vez, corre igual en todas partes.