Docker
La herramienta que popularizó los contenedores: empaquetás una vez, corre en todos lados.
Docker es un conjunto de herramientas para construir y correr contenedores, hecho por la empresa del mismo nombre. Salió en 2013, tomó una idea vieja de Linux y la volvió usable para cualquier developer; por eso mucha gente todavía dice "un Docker" cuando habla de un contenedor.
El flujo tiene tres pasos. Escribís un Dockerfile, una receta corta en texto: partí de este sistema base, copiá mi código, instalá estas librerías, corré este comando. docker build convierte la receta en una imagen, un paquete cerrado con todo lo que la app necesita. docker run arranca un contenedor a partir de esa imagen, y podés arrancar todas las copias idénticas que quieras.
Las imágenes se comparten a través de un registry, una biblioteca de imágenes; Docker Hub es el público más conocido y las nubes ofrecen privados como Amazon ECR. Ahí está la utilidad: la misma imagen corre en una laptop, en un servidor de pruebas y en producción, así que "en mi máquina anda" deja de ser excusa. El formato de imagen hoy es un estándar abierto, así que las imágenes hechas con Docker también corren en Kubernetes y en otras herramientas que ni usan Docker.
Para quedarse
- El Dockerfile es la receta, la imagen es el paquete, el contenedor es la copia que corre.
- Los registries como Docker Hub guardan y comparten imágenes.
- El formato de imagen es un estándar abierto, así que las imágenes corren también fuera de Docker.
- Docker es la herramienta; el contenedor es la idea general.