Menú
Sobre mí Servicios Trayectoria Trabaja conmigo
Contenedores de carga que representan contenedores Docker
Tecnología Feb 26, 2026 • 10 min de lectura

Docker y contenedores: la guía de 'simplemente funciona' para todos

Docker sin misterio. Aprende qué son los contenedores, por qué están en todas partes y cómo montar tu propio laboratorio casero con Portainer en una Raspberry Pi.

Compartir:
Lee Foropoulos

Lee Foropoulos

10 min de lectura

Imagina esto: descargas una aplicación. No funciona porque tienes la versión equivocada de Python. O de Java. O de alguna librería de la que nunca has oído hablar. Pasas tres horas intentando arreglarlo, al final te rindes y cuestionas tus decisiones de vida.

Los contenedores solucionan esto. Son la razón por la que "funciona en mi máquina" ya no es una excusa aceptable en el desarrollo de software. Y no son solo para desarrolladores: cualquier persona que tenga un servidor en casa, que juegue con domótica, o que simplemente esté harta del infierno de instalación de software puede beneficiarse.

¿Qué son los contenedores, en realidad?

Piensa en un contenedor como un contenedor de transporte en un buque de carga. No importa qué hay dentro (coches, plátanos, muebles de IKEA), el contenedor tiene un tamaño estándar que encaja en cualquier barco, camión o tren. La carga no se preocupa por el vehículo que la transporta.

Los contenedores de software funcionan igual. Empaquetan una aplicación con todo lo que necesita para funcionar: código, librerías, configuraciones, dependencias. Todo el paquete completo. Luego ese contenedor se ejecuta de forma idéntica ya sea en tu portátil, un servidor en la nube o una Raspberry Pi en tu armario.

Contenedores de transporte en un puerto
Los contenedores de transporte estandarizaron el comercio global. Los contenedores de software estandarizaron el despliegue.

Contenedores vs. Máquinas Virtuales

"Pero espera," dices, "¿no es eso lo que hacen las máquinas virtuales?" Más o menos, pero los contenedores son mucho más eficientes.

Una máquina virtual ejecuta un sistema operativo completo. Si quieres ejecutar tres aplicaciones, podrías levantar tres VMs, cada una con su propia copia de Windows o Linux. Eso es mucha sobrecarga: gigabytes de archivos de sistema operativo duplicados, todos ejecutándose simultáneamente.

Los contenedores comparten el kernel del sistema operativo anfitrión. Solo empaquetan la aplicación y sus dependencias específicas. Tres contenedores pueden usar 300MB en total en lugar de 30GB. Arrancan en segundos en vez de minutos. Son ligeros, rápidos y desechables.

300MB vs 30GB
Los contenedores usan aproximadamente 100 veces menos almacenamiento que las máquinas virtuales equivalentes al compartir el kernel del SO anfitrión.

La Analogía

Máquinas Virtuales = Casas separadas, cada una con sus propios cimientos, fontanería, electricidad.
Contenedores = Apartamentos en un edificio, compartiendo infraestructura pero con espacios privados.

Entra Docker: El Estándar de Contenedores

Docker no inventó los contenedores, pero los hizo utilizables por humanos normales. Antes de Docker (lanzado en 2013), los contenedores existían pero eran un dolor de cabeza para configurar. Docker nos dio comandos simples, un formato estándar y, de forma crucial, Docker Hub, una enorme biblioteca de imágenes de contenedores preconstruidas.

¿Quieres ejecutar WordPress? Hay un contenedor para eso. ¿Necesitas una base de datos? Elige entre MySQL, PostgreSQL, MongoDB, todos a un comando de distancia. ¿Domótica con Home Assistant? ¿Servidores de juegos? ¿Gestores de contraseñas? ¿VPNs? Todo containerizado y listo para funcionar.

# Descarga y ejecuta un servidor web en un solo comando
docker run -d -p 80:80 nginx

# Eso es todo. Ya tienes un servidor web funcionando.

¿Por qué debería importarte?

A menos que seas desarrollador, quizá te preguntes por qué algo de esto importa. El asunto es este: los contenedores han escapado del mundo de los desarrolladores y ahora son la forma más fácil de ejecutar software en servidores domésticos.

Los contenedores no son solo una tendencia de desarrolladores; son la forma más fácil de ejecutar software de manera fiable.

Para desarrolladores

  • Entornos consistentes: Tu configuración de desarrollo coincide exactamente con producción
  • Incorporación fácil: ¿Nuevo miembro del equipo? docker-compose up y ya está funcionando
  • Microservicios: Divide aplicaciones en servicios pequeños e independientes que escalan por separado
  • Pipelines CI/CD: Construye una vez, despliega en cualquier lugar

Para entusiastas del Home Lab

  • Ejecuta docenas de servicios en una máquina: Sin conflictos, sin infierno de dependencias
  • Actualizaciones fáciles: Descarga nueva imagen, reinicia contenedor, listo
  • Portabilidad: Mueve toda tu configuración a nuevo hardware copiando un archivo de configuración
  • Aislamiento: Si una aplicación se rompe, no tumba todo lo demás

Para infraestructura

Infraestructura de sala de servidores
Los contenedores alimentan desde laboratorios caseros hasta centros de datos empresariales

Portainer: Docker simplificado

"Pero no quiero memorizar sintaxis de línea de comandos." Justo. Aquí entra Portainer.

Portainer es una interfaz gráfica web para gestionar contenedores Docker. En lugar de escribir comandos, haces clic en botones. Puedes ver todos tus contenedores en ejecución, consultar logs, gestionar redes y desplegar nuevas aplicaciones, todo desde un navegador.

¿Instalarlo? También un solo comando:

docker run -d -p 9000:9000 \
  --name portainer \
  --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v portainer_data:/data \
  portainer/portainer-ce

Navega a http://localhost:9000, crea una cuenta de administrador, y ya estás gestionando contenedores con una interfaz elegante. No se necesita terminal (después de ese primer comando).

Por qué me encanta Portainer

  • Vista general visual de todo lo que está ejecutándose
  • Acceso con un clic a los logs de contenedores
  • Gestión fácil de variables de entorno
  • Plantillas de aplicaciones para despliegues con un clic
  • Gestiona múltiples hosts Docker desde una sola interfaz

Contenedores populares para Home Lab

Esto es lo que la gente realmente ejecuta en sus home labs. Todo disponible en Docker Hub con instalaciones de un solo comando:

Domótica

  • Home Assistant - El rey de la domótica. Controla luces, termostatos, cámaras, todo.
  • Node-RED - Programación visual para flujos de automatización IoT
  • Mosquitto - Broker MQTT para comunicación de dispositivos IoT

Multimedia y entretenimiento

Productividad y seguridad

  • Vaultwarden - Gestor de contraseñas Bitwarden auto-alojado
  • Nextcloud - Tu propio almacenamiento en la nube (alternativa a Google Drive)
  • WireGuard - VPN rápida y moderna
  • Pi-hole - Bloqueo de anuncios a nivel de red

Ejecutando Docker en una Raspberry Pi

Aquí viene lo divertido: puedes ejecutar todo esto en una Raspberry Pi de 35$. Una Pi 4 con 4GB u 8GB de RAM es un excelente servidor doméstico, consumiendo poca energía mientras ejecuta una docena de contenedores.

Pasos de configuración

  1. Graba Raspberry Pi OS Lite (64-bit) en una tarjeta SD usando Raspberry Pi Imager
  2. Arranca y conéctate por SSH: ssh [email protected]
  3. Actualiza el sistema: sudo apt update && sudo apt upgrade -y
  4. Instala Docker:
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
# Cierra sesión y vuelve a entrar
  1. Instala Docker Compose: sudo apt install docker-compose -y
  2. Instala Portainer (comando anterior) ¡y empieza a desplegar!
Ordenador Raspberry Pi
Una Raspberry Pi puede ejecutar todo tu home lab por unos 5$/año en electricidad

Consejos de rendimiento para Pi

  • Usa un SSD por USB en lugar de tarjeta SD para mejor velocidad y durabilidad
  • Consigue una carcasa con ventilador: los contenedores pueden exigir al CPU
  • La Pi 5 es significativamente más rápida si necesitas más potencia
  • Consulta LinuxServer.io para imágenes de contenedores optimizadas para ARM

Docker Compose: Gestionando múltiples contenedores

Una vez que ejecutas más de unos pocos contenedores, gestionarlos individualmente se vuelve tedioso. Ahí es donde entra Docker Compose. Defines todos tus contenedores en un solo archivo YAML:

# docker-compose.yml
version: '3'
services:
  pihole:
    image: pihole/pihole
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "80:80/tcp"
    environment:
      TZ: 'America/New_York'
    restart: unless-stopped

  homeassistant:
    image: homeassistant/home-assistant
    ports:
      - "8123:8123"
    volumes:
      - ./homeassistant:/config
    restart: unless-stopped

  portainer:
    image: portainer/portainer-ce
    ports:
      - "9000:9000"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    restart: unless-stopped

Luego un solo comando lo levanta todo: docker-compose up -d

Toda tu configuración ahora está controlada por versiones, es portable y reproducible. ¿Te mudas a nuevo hardware? Copia el archivo compose y tus volúmenes de datos. Listo.

Primeros pasos: Tu proyecto de fin de semana

No intentes containerizar toda tu vida en un fin de semana. Empieza poco a poco:

  1. Instala Docker en tu máquina (o en una Pi que tengas libre)
  2. Ejecuta Portainer para la interfaz visual
  3. Despliega Pi-hole para bloqueo de anuncios a nivel de red: beneficio inmediato y visible
  4. Añade Uptime Kuma para monitorizar tus servicios
  5. Gradúa a Docker Compose cuando tengas 3 o más contenedores

A partir de ahí, la madriguera de conejo es tan profunda como quieras. Domótica. Servidores multimedia. Auto-alojamiento de todo. El ecosistema de contenedores es vasto y sigue creciendo.

Plan de proyecto Docker de fin de semana 0/5

"El mejor momento para empezar a aprender sobre contenedores fue hace cinco años. El segundo mejor momento es este fin de semana."

Recursos para profundizar

En resumen

Los contenedores no son solo una tendencia de desarrolladores: son la forma más fácil de ejecutar software de manera fiable. Una vez que entiendes el concepto (paquetes estandarizados que se ejecutan en cualquier lugar), el resto es simplemente aprender las herramientas.

Docker te da el motor. Portainer te da el panel de control. Una Raspberry Pi te da un campo de pruebas barato. Y la comunidad ya ha containerizado prácticamente todo lo que querrías ejecutar.

Así que deja de asentir con la cabeza cuando la gente menciona contenedores. Levanta Portainer este fin de semana, despliega algo útil, y únete a la conversación con experiencia real.

Tu yo del futuro, el que no está depurando conflictos de dependencias a medianoche, te lo agradecerá.

How was this article?

Compartir

Link copied to clipboard!

You Might Also Like

Lee Foropoulos

Lee Foropoulos

Business Development Lead at Lookatmedia, fractional executive, and founder of gotHABITS.

🔔

No te pierdas ninguna publicacion

Recibe notificaciones cuando se publiquen nuevos articulos. No se requiere correo electronico.

Veras un aviso en el sitio cuando haya una nueva publicacion, ademas de una notificacion del navegador si lo permites.

Solo notificaciones del navegador. Sin spam, sin correo.