
Mi Homelab Setup: Más de 50 Contenedores Docker en Raspberry Pi
Aprende a hostear 50+ apps en Docker, gestionar tu red y mejorar tu productividad.
Llevo ya un poco más de un año de haberme metido de lleno en esto del self-hosting / homelab. Es interesante cómo se ha popularizado esto de tener servicios propios ejecutándose 24/7 y la verdad es que me gusta muchísimo. Hay muchos casos prácticos y quiero compartirte lo que he aprendido.
En un artículo anterior te contaba cómo armar mi propio hitbox me obligó a ensuciarme las manos con el hardware. Bueno, este proyecto de homelab hizo casi lo mismo, pero empujándome de lleno hacia el área de DevOps, con la que no suelo estar tan involucrado en mi día a día en el trabajo.
📑 Tabla de Contenidos
- Mi setup y hardware
- Red, Proxy y Seguridad
- Monitorización y Gestión
- Desarrollo, IA y Automatización
- Productividad y Gestión de Documentos
- Multimedia y Almacenamiento
- Utilidades Adicionales
- Servicios que dejé de usar
🖥️ Mi setup y hardware
Como muchos de los que empezamos con nuestro homelab, empecé con la confiable Raspberry Pi 5.
| Característica | Especificación |
|---|---|
| Modelo | Raspberry Pi 5 |
| Arquitectura | ARM 64-bit (aarch64) |
| CPU | Broadcom BCM2712 – Quad-core Cortex-A76 |
| Frecuencia | 1.5 GHz (mín) – 2.4 GHz (máx) |
| Núcleos / Hilos | 4 núcleos / 4 hilos |
| RAM | 16 GB LPDDR4X (15.6 GB detectados por el SO) |
Para armar el NAS junto a la Raspberry le puse un Penta SATA hat de Radxa junto a 4 SSD Kingston de 1TB que juntos forman un RAID 5. Sé que no es la configuración más óptima para 4 unidades (ya que funciona mejor en conjuntos donde los discos de datos quedan en potencias de 2 por temas de rendimiento y alineación de bloques), pero me da lo mejor de los dos mundos: tener un almacenamiento consolidado y permitirme la falla de máximo una unidad SSD sin perder mi información. En esta configuración me quedan disponibles 2.6TB.
Actualmente ejecuto 24/7 unos 50 contenedores Docker entre bases de datos de los propios servicios, sistemas de caché, DNS server, y otros servicios que detallaré más adelante. Yo sé que suenan a demasiados, y justo me encuentro trabajando en organizar adecuadamente cuáles son imprescindibles para estar siempre encendidos y cuáles iniciar solo cuando son necesarios.
🛡️ Red, Proxy y Seguridad
Pi-hole

Qué bella es la vida sin anuncios… o casi sin anuncios. Este es de esos servicios que te los encontrarás sí o sí en las listas de self-hosting y, aunque no eliminan completamente los anuncios, te dejarán respirar más tranquilamente. Y no solo de anuncios: si agregas las listas correctas de exclusión de DNS hasta te protegerá de sitios web maliciosos o que puedan infectarte de malware.
En mi caso tengo en las listas de bloqueos casi 3 millones de dominios. Claro que tienes que ser cuidadoso, si agregas listas muy agresivas puedes terminar baneando dominios realmente necesarios como páginas de bancos, así que ten cuidado. Respecto a qué listas DNS agregar, te recomiendo que revises las siguientes:
- DNS blocklist (La más completa)
- AdGuardFilters
- OISD
- AdFilt
Nginx Proxy Manager

Si no quieres estarte aprendiendo el puerto de cada servicio de tu homelab, definitivamente necesitas este servicio. Así te olvidas de tantos puertos y de paso, si lo configuras adecuadamente, puedes tener SSL para tus servicios locales. Sin duda te ahorrará grandemente la vida.
Se me ocurre un caso de uso más que quizás te sea útil si haces desarrollo mobile: si ejecutas el backend en tu PC te habrás topado con que necesitas ngrok o algún servicio similar. Con Nginx Proxy Manager puedes crearle un dominio a tu backend y prescindir completamente de ngrok. La idea de esto es usarlo en la red local, sin embargo, si lo combinas con Tailscale o alguna otra VPN local, no hace falta que estés conectado únicamente a través del Wi-Fi de tu casa para acceder, y de paso, todo con SSL.
💡 Un tip rápido sobre exponer tus servicios
Hablando de dominios y accesos, me gustaría mencionar que en mi caso no expongo la mayoría de los servicios al internet abierto. Exponer todo tu homelab puede ser peligroso e irresponsable si no tienes cuidado. En su lugar, accedo a todos mis recursos utilizando una VPN, en mi caso Tailscale. Solo en casos muy puntuales donde de verdad se necesita exponer un servicio al exterior, lo hago utilizando Cloudflare Tunnels montado en un contenedor Docker de cloudflared.
NetAlertX

Este servicio es interesante si quieres tener un control detallado sobre TODOS los dispositivos conectados a tu red local. Te puede servir, por ejemplo, si algún enchufe inteligente se desconecta, o si se conecta un nuevo dispositivo (tú recibes una notificación). Esto puede tener algunos usos interesantes; por ejemplo, un día descubrí que un familiar venía cerca de la casa a conectarse al wifi aunque no venía a la casa de visita 😅. O, por ejemplo, sabía cuándo mi padre ya estaba en casa porque se conectaban sus dispositivos.
Lo único que te advierto es que si algún dispositivo tiene una MAC aleatoria esto puede volverse molesto, porque cada conexión se estaría identificando como un nuevo dispositivo.
SearXNG

Este es un metabuscador de la web, es decir, no tiene su propio motor de búsqueda; en su lugar, realiza la búsqueda en múltiples motores a la vez (Bing, Google, DuckDuckGo, etc.) y consolida el resultado. Si lo que buscas es realizar búsquedas donde la respuesta no esté sesgada o censurada por un buscador específico y de paso buscas privacidad, este servicio te será muy útil.
📊 Monitorización y Gestión
Beszel

Cuando empiezas a tener más y más servicios como yo en tu homelab, te viene bien monitorear qué servicios consumen más recursos, y eso lo consigues muy cómodamente con Beszel. Incluso puedes establecer alertas si tu servidor supera el 80% de consumo de CPU, memoria RAM, o si la temperatura promedio supera X cantidad. Y lo mejor es que te permite monitorizar múltiples sistemas, por si empiezas a agrandar tu homelab con más nodos.
Dockhand

Este servicio te permite gestionar todo lo relacionado con tus contenedores, no solo de un dispositivo, sino de varios a la vez como ves en la screenshot. Además, puedes monitorizar updates en las imágenes Docker de tus servicios, programar el prune de las imágenes no utilizadas, ver los logs, controlar el consumo de recursos por servicio y más.
Sin duda, una de mis últimas adiciones con la que estoy muy contento. Si te animas a probarlo, te animo a que veas el video de Christian Lempa que lo explica mucho mejor que yo.
Homepage

Si te haces de muchos servicios, definitivamente vas a necesitar un dashboard para recordarlos todos. Ahí es donde entra Homepage. Se configura muy fácilmente a través de archivos .yaml y tiene una amplia variedad de widgets que puedes agregar. Yo, por ejemplo, he agregado los del consumo de recursos por servicio y otros específicos de cada contenedor.
💻 Desarrollo, IA y Automatización
Infisical
Ya tengo otro artículo donde profundizo en esta herramienta. Pero, en pocas palabras, es una herramienta que te ayuda a gestionar los secrets de tus proyectos. Te vendrá sumamente bien si te dedicas al desarrollo de software.
n8n

Un clásico en las listas de self-hosting y proyectos open-source que debes probar. Te permite automatizar de manera sencilla cualquier idea que se te ocurra, y si te quieres poner más técnico y escribir tu propio código (ya sea en Python o en JS) también te permite hacerlo. Si quieres ver algo más complejo, puedes echarle un ojo a mi artículo sobre cómo transcribir archivos largos en un workflow de n8n o tambien sobre como generar PDFs en n8n con Gotengerg.
LiteLLM

¿Has oído o utilizado OpenRouter? Pues haz de cuenta que es casi lo mismo pero en versión self-hosted. LiteLLM te permite tener centralizadas tus API keys de distintos proveedores de IA. En mi caso, en lugar de crear múltiples API keys por proveedor para cada aplicación, tengo una sola API key por proveedor y en LiteLLM gestiono llaves virtuales que hacen compatible cualquier proveedor con el SDK de OpenAI. Aparte, puedes controlar el consumo de tokens, costo por API key, limitar el costo máximo o limitar una llave para un grupo de usuarios.
Un caso frecuente con el que me he encontrado es que algún servicio no soporte un proveedor específico pero sí soporte el SDK de OpenAI. Ahí es donde LiteLLM brilla.
Open WebUI

Imagínate tener tu propio ChatGPT / Claude / Gemini (o tu LLM de confianza). Eso es justamente Open WebUI. Puedes conectarle las API keys de tus proveedores de IA, ya sea directamente o a través de LiteLLM, y chatear.
Algunas cosas interesantes es que, por ejemplo, puedes escribirle un prompt y hacer que múltiples modelos te respondan a la vez. O si eres de probar LLMs locales, puedes también conectarlo con tu servidor Ollama. En mi caso, la Raspberry no soporta modelos locales muy exigentes, pero mi PC de escritorio sí. Para solucionarlo, expongo la API de Ollama desde mi PC en la red local y la conecto directamente a la instancia de Open WebUI en la Raspberry.
Code server

Prácticamente es VS Code pero en el navegador. ¿Qué utilidad puede tener? Bueno, puede que quieras realizar algún proyecto de tu trabajo directamente desde el navegador por alguna razón. Pero el caso más práctico para mí es poder configurar fácilmente alguno de mis servicios: si necesito modificar algún valor de un docker-compose.yml sin tener que conectarme por SSH al servidor para luego modificarlo vía terminal, puedo abrir Code Server y hacer la modificación rápidamente.
CloudBeaver

Como el DBeaver pero self-hosted. Este es de los últimos que he agregado a mi homelab. Simplemente, si tienes que gestionar bases de datos, ya sea por trabajo o las mismas bases de datos del servidor, puedes utilizarlo directamente desde el navegador.
📚 Productividad y Gestión de Documentos
Karakeep

Yo solía ser un fiel usuario de Pocket (esta app para guardar artículos para leer después), pero lamentablemente el equipo de Mozilla decidió apagar este servicio permanentemente. Así que tocaba buscar una alternativa. Si eres de los míos, que guarda artículos para leer después o simplemente porque te gustaron, te recomiendo que pruebes Karakeep.
Puedes hacer listas y marcar citas en los artículos. Puedes sincronizarlos con subscripciones de RSS directamente. Además, tiene un muy buen sistema de etiquetado de artículos que puedes configurar con tu modelo LLM de confianza. Yo personalmente lo ocupo únicamente para guardar artículos, pero puedes guardar notas e incluso links de videos de YouTube.
Slash

¿Qué problema me resuelve este servicio? Poder gestionar marcadores de sitios web que frecuento sin tener que depender del sistema nativo de algún navegador ni andar importando marcadores de un lado a otro. Slash te permite etiquetar tus marcadores y agregarles un shortcut para abrirlos fácilmente.
Paperless-ngx

Gestor de documentos. Si no quieres perder ninguna factura, contrato o recibo, te recomiendo Paperless. Puedes categorizar tus documentos, agregarles etiquetas, origen y establecer que aprenda automaticamente a realizar este trabajo. Integra un lector OCR para que puedas hacer búsquedas directamente en el texto de las imágenes, y también tiene app mobile con la que puedes subir PDFs o simplemente tomarle captura a un documento y el sistema te lo convertirá en PDF.
También puedes conectarlo a tu email para que automáticamente vaya guardando los documentos que te envían al correo, como facturas, estados de cuenta del banco o cualquier archivo importante.
Speakr

Este servicio me es grandemente útil para mi trabajo. Lo conectas a Whisper para la transcripción y a otro modelo para el análisis de texto. Puedes, por ejemplo, subir el audio de alguna reunión para que te lo transcriba; o compartirle el audio del micrófono y del sistema, y tan pronto termina la reunión procesa el audio para que puedas empezar a hacerle preguntas sobre la llamada, hacer notas al vuelo o ponerle un prompt propio sobre el resumen que te debe sacar.
Pero va más allá: si, por ejemplo, no recuerdas en qué reunión se trató sobre X tema, tienes un buscador general conectado a un RAG de todas las reuniones. Otra función que ocupo poco pero te puede ser útil es que el sistema extrae si hay algún evento que se discutió en la llamada y te permite agregarlo fácilmente a tu calendario.
🎬 Multimedia y Almacenamiento
Immich

Haz de cuenta que es tu Google Photos self-hosted. Tiene reconocimiento de rostros, puedes catalogar por álbumes, ubicar las fotos en el mapa tomando las coordenadas de la metadata, y tiene línea de tiempo. Puedes compartir tus fotos, tener múltiples usuarios… en fin, una alternativa directa a Google Photos, Amazon Photos u otro servicio similar.
⚠️ Un detalle importante: en mis pruebas, la Raspberry Pi 5 es totalmente capaz de soportar el procesamiento de Machine Learning para el reconocimiento, pero lo que sí notarás es un aumento súbito en el consumo de recursos cuando se suban tus fotos, y especialmente cuando procesa videos. Mi recomendación sería no subir demasiados archivos de golpe o asegurarte de que ningún otro servicio que consuma muchos recursos esté funcionando en ese momento. Otro punto genial es que la app de Immich para el teléfono tiene subida automática, y eso te permite tener las fotos bien guardadas si le pasa algo a tu dispositivo.
Jellyfin

Si quieres reproducir tu música, videos, películas o series como si tuvieras Netflix en tu TV o demás dispositivos, definitivamente debes probar Jellyfin. Es fácil de instalar y de configurar tu contenido multimedia. Además, tiene app y es ampliamente soportado por las Smart TVs.
Ryot

Si quieres llevar un control de las series, películas, anime o videojuegos que consumes o estás esperando, con este servicio puedes llevarlo a cabo fácilmente. De hecho, puedes trackear más estadísticas como ejercicios realizados, pero yo lo utilizo mayormente para llevar el registro del contenido multimedia que consumo o quiero consumir.
Duplicati

Te recomiendo en gran medida este servicio para tener un backup automatizado de tu homelab. En mi caso guardo un respaldo cada 3 días de todas las configuraciones de mis servicios (los volúmenes persistentes de los contenedores, los .env, los docker-compose.yml y las bases de datos).
Mi estrategia es guardar 2 versiones del backup. Por ahora, los servicios están corriendo en una unidad de almacenamiento diferente y el backup lo envío directamente al RAID, así que estoy protegido si la unidad principal falla. Aunque a futuro me gustaría implementar correctamente la técnica 3-2-1, quizás guardando una copia extra cada mes en Glacier o algún servicio que me permita, por poco costo, tener un respaldo de emergencia por si incluso mi RAID es irrecuperable. Lo interesante es que da distintas opciones de guardado: local, vía SSH, vía FTP, Google Drive, Dropbox e incluso S3.
🛠️ Utilidades Adicionales
- Umami: Si quieres gestionar las analíticas de algún sitio web propio sin depender de Google Analytics, esta es una muy buena opción. Es el que ocupo para mi blog: puedes ver visitas, países, referrers, navegador usado y gestión de UTMs. Lo mejor es que casi no consume RAM (unos 250MB).

- Wallos: Va al grano: te ayuda a gestionar tus suscripciones. Le asignas categorías, renovación (anual/mensual), método de pago y te avisa cuando está por vencerse para que evalúes si quieres seguir pagándola.

- DumbAssets: Te ayuda a gestionar tus recursos. Lo que más me gusta es que me permite llevar un control de las garantías y mantenimientos de mis dispositivos. Adjuntas el PDF de la garantía y te notifica cuando está por culminar.

- Mealie: Piénsalo como un recetario digital. Lo ocupo para guardar las recetas que suele hacer mi madre y las que encuentro en internet. Te deja armar los menús de la semana y la lista de compras.

- Manyfold: Te lo recomiendo únicamente si tienes impresora 3D. Puedes guardar tus modelos favoritos, categorizarlos, hacer colecciones y tener varias versiones del mismo modelo en lugar de tenerlos regados en carpetas.

Estos son los servicios que más utilizo. Claro que si te enlisto los contenedores uno por uno serían muchos más, pero dejaría de tener sentido porque algunos no tienen interfaz gráfica o son demasiado específicos. Algunos de ellos son:
- Evolution api: Me permite gestionar mi WhatsApp completamente. Conectándolo con n8n puedo transcribir audios, resumir mensajes, contestar automáticamente, etc.
- Gotenberg: Este lo he tratado en otro artículo y me permite tomar captura de sitios web y generar/manipular PDFs.
- Hometube: Me permite descargar multimedia fácilmente.
- Uptime kuma: Servicio muy conocido para controlar si hay servicios caídos, aunque estoy considerando retirarlo porque
Dockhandya hace algo parecido. - Cronmaster: Si necesitas gestionar
cronjobscon una interfaz gráfica, sin duda te gustará. - Speedtest tracker: Te permite realizar test de velocidad recurrentes en tu red y notificarte si baja de cierta velocidad.
🛑 Servicios que dejé de usar
Plex
Este era mi favorito para reproducir contenido, pero al haber anulado el remote play gratis e incrementar tanto la membresía lifetime, fue un gran red flag para mí que me terminó llevando a Jellyfin. Debo admitir que me gustaba más la apariencia de Plex, pero para mi caso personal Jellyfin es más que suficiente.
ByteStash
Te permite guardar tus snippets de código o prompts de tu día a día. Lo dejé de usar porque lo terminé reemplazando por simplemente utilizar Obsidian para estos propósitos.
Forgejo
Tener un GitHub self-hosted suena como un experimento interesante, y lo es. Tener tus repositorios apuntando a tus propios recursos (y el equivalente a GitHub Actions) suena bien, lo probé un tiempo, pero siendo sincero GitHub ya cubría mis necesidades en este aspecto.
Home Assistant
En mi casa tengo luces y switches inteligentes, barras de luz e incluso mi PC se enciende por voz. Pero en mis pruebas no terminé de encontrarle el gusto a Home Assistant. En general, con pedírselo a Alexa es suficiente para mí. Lo dejé de usar también por el alto consumo de RAM que tenía.
Portainer & Watchtower
Portainer para gestionar contenedores y Watchtower para actualizarlos diariamente funcionaba bien. Pero el hecho de que los creadores de Watchtower abandonaran el proyecto hizo que buscara alternativas. Así terminé encontrando Dockhand.
File Browser
Aparte de que este proyecto pasó a estar maintenance-only, me resultaba innecesario si podía tener el mismo acceso utilizando Samba. Incluso desde el teléfono podía acceder a mis archivos desde el explorador nativo.
CRM Monica
Suena ideal tener una agenda bien documentada de todas mis interacciones sociales. Pero, siendo sincero, no tengo la disciplina para llevar un registro detallado de cada persona que conozco. Y de necesitarlo, puedo llevarlo a cabo desde Obsidian, manteniendo las relaciones en un grafo.
Homarr
Es un dashboard para tu homelab. Si bien es muy bueno y puedes agregar múltiples paneles, lo que me hizo dejar de usarlo y reemplazarlo por Homepage fue su alto consumo de memoria RAM. Si no es algo que te preocupe demasiado, puedes darle una oportunidad.
🚀 ¿Qué sigue para el homelab?
Para ir cerrando, te adelanto que mi servidor ya está evolucionando. Recientemente he estado ampliando mi infraestructura agregando un ZimaBlade y probando herramientas nuevas (incluso estoy trasteando con Hermes Agent), pero eso da para un artículo completo más adelante.
¿Y tú, qué servicios de esta lista ya conocías? ¿Cuáles te dieron ganas de instalar en tu propio servidor? Déjamelo en los comentarios.
Si te gustó este recorrido y te llama la atención la automatización en el homelab, te invito a darte una vuelta por mis otros articulos. ¡Nos vemos en el próximo!
Articulos relacionados
Cómo generar PDFs en n8n con Gotenberg
Integra Gotenberg en tus workflows de n8n para crear PDFs de manera automatizada
Transcribe Audios Largos con N8N y FFmpeg sin Límites de Tamaño
Aprende a crear un subworkflow de n8n que segmente y transcriba largos archivos de audio automaticamente
No más .env perdidos: Una solución self-hosted
Mi experiencia usando Infisical para gestionar variables de entorno: instalación, configuración y uso real en proyectos JavaScript