Volver al curso

DevOps Moderno: CI/CD, Docker y Kubernetes

leccion
1 / 12
advanced
30 horas
Contenedores con Docker

Docker: Fundamentos de Contenedores

Lectura
45 min~2 min lectura

Docker: La Base del DevOps Moderno

Docker revoluciono la forma en que empaquetamos y desplegamos software. Un contenedor es una unidad ligera y portatil que incluye todo lo necesario para ejecutar una aplicacion: codigo, runtime, librerias y configuracion. Esto elimina el clasico problema de funciona en mi maquina.

Por que Docker es Esencial

En el ecosistema de desarrollo de LATAM, Docker se ha convertido en el estandar. Segun encuestas de Stack Overflow 2025, el 78% de desarrolladores profesionales en la region usan contenedores en sus proyectos. Empresas como Mercado Libre, Globant, Rappi y Nubank tienen toda su infraestructura containerizada.

ConceptoDescripcionAnalogia
ImagenTemplate inmutable con todo el softwareReceta de cocina
ContenedorInstancia en ejecucion de una imagenPlato servido
DockerfileInstrucciones para construir imagenPasos de la receta
RegistryRepositorio de imagenes (Docker Hub)Libro de recetas
VolumenAlmacenamiento persistenteRefrigerador (persiste)
# Dockerfile para app Node.js de produccion
FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
RUN npm run build

FROM node:20-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/package.json ./

EXPOSE 3000
USER node
CMD ["node", "dist/server.js"]

🚀 Dato Clave

Usa multi-stage builds para reducir el tamano de tus imagenes hasta 10x. La imagen de arriba pesa ~150MB vs ~1.2GB sin multi-stage. En LATAM donde el ancho de banda puede ser costoso, esto es critico.

# Comandos Docker esenciales
docker build -t mi-app:1.0 .
docker run -d -p 3000:3000 --name app mi-app:1.0
docker logs app --tail 50
docker exec -it app sh
docker stop app && docker rm app

# Limpiar recursos
docker system prune -a
Contenedores Docker

Docker es el primer paso en tu camino DevOps. En la siguiente leccion construiremos entornos completos con Docker Compose.