Saltar al contenido
Explorar conocimiento

tecnología · intermedio · 2 min de lectura

Docker

Docker empaqueta aplicaciones y sus dependencias en contenedores livianos y portables, garantizando que el software corra idéntico en desarrollo, staging y producción.

No requiere conocimientos previos.

Alcance en breve

Cubre

  • Docker as a concept

No cubre

  • implementation details

Supone

  • The reader understands relevant fundamentals.

Resumen

Docker es una plataforma de contenedores que resuelve el clásico "en mi máquina funciona". Un contenedor es un entorno aislado que incluye la aplicación, sus dependencias, configuraciones y sistema de archivos, compartiendo el kernel del host pero ejecutándose como un proceso separado.

A diferencia de una máquina virtual —que incluye un sistema operativo completo—, un contenedor es mucho más liviano: arranca en segundos, ocupa megabytes en lugar de gigabytes, y permite ejecutar decenas de contenedores en la misma máquina. Las imágenes de Docker se construyen con un Dockerfile y se comparten a través de registries como Docker Hub.

Alcance y supuestos

Cubre Docker, imágenes, contenedores, Dockerfiles y registries. Asume familiaridad con línea de comandos.

Modelo mental

Un container de barco estandarizado. No importa qué lleve adentro —autos, ropa, maquinaria—: el container tiene tamaño y encastres estándar. Cualquier puerto, barco o camión que acepte containers lo puede transportar. Docker es el container de barco para tu aplicación.

Uso práctico

  • ✅ Desarrollo, CI/CD, microservicios, entornos reproducibles.
  • ❌ Aplicaciones con necesidades gráficas o acceso directo a hardware especializado.

Ejemplo trabajado: Dockerfile para una app Node.js

FROM node:22-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --production
COPY . .
CMD ["node", "server.js"]

Evidencia

Fuentes citadas