Un único contenedor que se comporta mal puede paralizar un hogar laboratorio. Una transcodificación de Jellyfin, un reindexado de Immich, una consulta de base de datos de Home Assistant, y de repente Pi-hole pierde DNS y Nextcloud agota el tiempo de espera. La solución no es más RAM. La solución son límites. Cada contenedor obtiene un límite de memoria, una asignación de CPU y un peso de I/O de bloque, y el vecino ruidoso se mantiene en su carril. Esa es la historia que un escritor de XDA contó recientemente después de finalmente establecer mem_limit, cpus: y blkio-weight en cada contenedor de su pila. La confiabilidad provino de los límites, no del hardware.
Durante las últimas semanas, hemos ejecutado las mejores aplicaciones para la gestión de recursos de contenedores Docker en las tres plataformas de escritorio que importan para los auto-alojadores: Windows (a través de WSL o Docker Desktop), macOS y Linux. Hemos visto interfaces web, interfaces de terminal y sistemas operativos autohospedados completos, y los clasificamos en una pregunta. ¿Qué tan rápido puede colocar cpus: 2.0 y mem_limit: 1g en cada contenedor en un lugar? Estos siete merecen ser instalados.
Qué buscar en un gestor de recursos de Docker
No todas las GUI de Docker están diseñadas para limitar recursos. Algunas cosas separan los que vale la pena instalar de los que simplemente enumeran sus contenedores con bonitos iconos.
- Límites de CPU y memoria por contenedor desde la interfaz, no solo desde un archivo compose que edita manualmente
- Estadísticas en vivo de CPU, memoria y red por contenedor, para que pueda detectar al glotón antes de limitarlo
- Soporte para editar una pila de compose en ejecución en su lugar, incluida la reimplementación cuando cambian los límites
- Acceso a
docker updatebajo el capó, para que pueda limitar un contenedor que ya se está ejecutando sin un reinicio - Una vista clara de qué está establecido versus no establecido, porque los contenedores ilimitados son los que lo picarán
- Compatibilidad con múltiples hosts si ejecuta Docker en más de una máquina (una NAS más una mini PC es el caso común)
Comparación rápida
| Aplicación | Mejor para | Plataformas | Licencia | Precio |
|---|---|---|---|---|
| Portainer | Control GUI completo sobre pilas y límites | Windows, macOS, Linux | Edición Comunitaria gratis, BE de pago | Gratis / desde aproximadamente $155 por nodo/año |
| Dockge | Edición enfocada en compose con estadísticas en vivo | Windows, macOS, Linux | Código abierto | Gratis |
| Docker Desktop | Límites nativos por contenedor en Mac y Windows | Windows, macOS, Linux | Personal gratis, equipos de pago | Gratis / desde $9 por usuario/mes |
| CasaOS | SO homelab para principiantes con tienda de aplicaciones | Linux (Debian/Ubuntu/Pi) | Código abierto | Gratis |
| Runtipi | Tienda de aplicaciones homelab seleccionada con valores por defecto sensatos | Linux | Código abierto | Gratis |
| Yacht | Interfaz web ligera para Docker de un solo host | Windows, macOS, Linux | Código abierto | Gratis |
| Lazydocker | Interfaz de terminal para triaje rápido y comprobaciones de CPU/memoria | Windows, macOS, Linux | Código abierto | Gratis |
Las aplicaciones
1. Portainer, mejor para control GUI completo sobre cada contenedor
Portainer es la herramienta en la que aterrizan la mayoría de los auto-alojadores una vez que su pila crece más allá de cuatro o cinco contenedores. La Community Edition es gratuita, se ejecuta como un único contenedor de Docker y le brinda una consola basada en navegador para cada contenedor, imagen, red, volumen y pila en uno o varios hosts de Docker. Para limitación de recursos específicamente, la vista de edición de contenedor expone límite de CPU (como recuento de vCPU), reserva de memoria y límite de memoria, y lo aplicará en caliente a través de docker update sin recrear el contenedor. Las pilas (archivos compose) se pueden editar en línea, y Portainer las reimplementa cuando guarda.
La vista de múltiples hosts es lo que la impulsa más allá de las opciones más ligeras. Si ejecuta Docker en una NAS y una mini PC, una instalación de Portainer puede administrar ambas, y el panel de recursos muestra qué host está bajo presión antes de limitar nada.
Donde se queda corta: La Community Edition gratuita reduce algunas características al nivel de la Business Edition de pago, incluido RBAC por usuario más allá de tres usuarios y contratos de soporte. Tampoco cubre peso de I/O de bloque desde la interfaz, por lo que blkio-weight sigue viviendo en su archivo compose.
Precio: La Community Edition es gratuita para nodos ilimitados. Business Edition comienza en aproximadamente $155 por nodo por año con descuentos por volumen y una licencia gratuita de 5 nodos para uso doméstico.
Plataformas: Se ejecuta en cualquier lugar donde se ejecute Docker. En escritorio, eso es Windows (WSL o Docker Desktop), macOS (Docker Desktop o Colima) y Linux.
Descargar: Sitio del editor · GitHub
Conclusión: Si desea un panel para ver y limitar cada contenedor en cada máquina que posee, Portainer es la respuesta predeterminada.
2. Dockge, mejor gestor gratuito enfocado en compose
Dockge adopta el enfoque opuesto a Portainer. En lugar de administrar contenedores como objetos de primera clase, trata los archivos compose como la fuente de verdad. Edita docker-compose.yaml en el navegador, presiona implementar, y Dockge detiene, recrea e reinicia la pila. Ese es exactamente el flujo de trabajo que desea cuando agrega mem_limit: 512m y cpus: '0.5' a cada servicio en deploy.resources y desea ver el cambio reflejado inmediatamente.
La interfaz es deliberadamente escasa: una lista de pilas a la izquierda, un editor de compose y una terminal a la derecha, lecturas de CPU y memoria en vivo en la parte superior. Está escrito por el mismo desarrollador que Uptime Kuma, así que el pulido es real, y la instalación es un único contenedor de Docker.
Donde se queda corta: Solo un host. Si necesita administrar más de una máquina Docker desde una pantalla, Dockge no lo hará. También asume que se siente cómodo escribiendo archivos compose, por lo que no es la opción para alguien que nunca ha visto YAML antes.
Precio: Gratis, código abierto bajo licencia MIT.
Plataformas: Se ejecuta en cualquier lugar donde se ejecute Docker. Funciona bien en un servidor Linux accesible desde un navegador Windows, macOS o Linux.
Descargar: GitHub
Conclusión: La mejor opción gratuita si sus contenedores ya viven en archivos compose y desea limitarlos allí sin abandonar el navegador.
3. Docker Desktop, mejor opción integrada en Windows y macOS
Docker Desktop viene con controles de recursos que la mayoría de los usuarios nunca abre. En Windows y macOS, el panel Recursos limita toda la máquina virtual Docker (memoria, CPU, intercambio, tamaño de imagen de disco), que es su red de seguridad para evitar que Docker se coma su portátil. Además de eso, los límites de contenedores individuales siguen funcionando como siempre a través de CLI, archivos compose y el diálogo de edición de contenedores de la interfaz de escritorio en versiones recientes.
La razón por la que está en esta lista es que ya está instalado en la mayoría de las máquinas de escritorio. Si aún no ha consultado Configuración de Docker Desktop y establecido un límite máximo de memoria y CPU en el motor, hágalo primero. Cada límite de contenedor debajo se construye sobre ese límite externo.
Donde se queda corta: Los límites de motor son la estrella del espectáculo; la edición por contenedor en la interfaz de escritorio es funcional pero escasa. En Linux la aplicación de escritorio es opcional, la mayoría de las personas usan el daemon directamente. El uso comercial superior a 250 empleados o $10 millones de ingresos requiere una suscripción de pago.
Precio: Gratuito para uso personal, educación, pequeñas empresas y código abierto. Pro es $9 por usuario por mes, Team $15, Business $24.
Plataformas: Windows, macOS, Linux.
Descargar: Docker.com
Conclusión: Establezca primero el límite de motor, luego superponga otra herramienta en la parte superior para límites por contenedor. Gratis para la mayoría de los usuarios domésticos.
4. CasaOS, mejor opción para homelabs principiantes
CasaOS es una capa completa del sistema operativo auto-alojado que se sienta encima de Debian, Ubuntu, Raspberry Pi OS o similar. Instale con un script de una línea y obtiene una pantalla de inicio tipo teléfono, una tienda de aplicaciones de instaladores de un clic (Jellyfin, Immich, Pi-hole, Home Assistant y aproximadamente 150 otros) y una vista de contenedor que muestra CPU y memoria por aplicación en tiempo real. Para cada contenedor instalado, puede abrir la configuración y establecer un límite de memoria, asignaciones de CPU y mapeos de puertos y volúmenes sin tocar un archivo compose.
Es la herramienta que pondríamos frente a un amigo que compró una mini PC para ejecutar Plex y Home Assistant y nunca ha abierto una terminal. Los límites están a un deslizador de distancia, y la interfaz hace obvio qué contenedores están ilimitados.
Donde se queda corta: Un solo host, solo Linux y con opinión. La tienda de aplicaciones selecciona un conjunto específico de imágenes, por lo que contenedores personalizados o fuera del catálogo funcionan a través del importador de compose, pero no se benefician de la experiencia de usuario de un clic. El ritmo de desarrollo se ha ralentizado en comparación con hace un par de años, aunque el proyecto sigue siendo activamente mantenido.
Precio: Gratis, código abierto bajo licencia Apache 2.0.
Plataformas: Solo Linux (Debian, Ubuntu, Raspberry Pi OS, Fedora, Arch). Acceso desde cualquier navegador de escritorio.
Descargar: Sitio del editor · GitHub
Conclusión: La forma más sencilla de ejecutar un pequeño hogar laboratorio con límites sensatos por aplicación si la máquina es un cuadro Linux dedicado.
5. Runtipi, mejor alternativa homelab seleccionada a CasaOS
Runtipi cubre el mismo terreno que CasaOS (tienda de aplicaciones, instaladores de un clic, configuración por aplicación), pero se siente más moderno y se mueve más rápido. La tienda de aplicaciones ahora abarca varios cientos de aplicaciones en contenedor, todas embaladas con valores predeterminados sensatos, variables de entorno expuestas en la interfaz y configuración de recursos expuesta por aplicación. Los límites que establece en la configuración de la aplicación se traducen en límites Docker estándar en el momento de la implementación.
Preferimos Runtipi a CasaOS cuando el usuario está más contento de leer documentos, ya que la configuración abre más opciones. También tiene mejor soporte para múltiples arquitecturas y un flujo de actualización más limpio.
Donde se queda corta: También un solo host y solo Linux. Las aplicaciones que no están en la tienda aún necesitan un archivo compose, importado a través de una definición de aplicación personalizada. La comunidad es más pequeña que la de Portainer o CasaOS, por lo que las integraciones oscuras requieren más investigación.
Precio: Gratis, código abierto.
Plataformas: Linux (Debian, Ubuntu y derivados). Acceso al navegador desde cualquier escritorio.
Descargar: Sitio del editor · GitHub
Conclusión: La opción si CasaOS se siente un paso demasiado simple y Portainer un paso demasiado crudo.
6. Yacht, mejor interfaz web ligera
Yacht es una interfaz web más pequeña y más rápida en el mismo espacio que Portainer, dirigida a usuarios que desean una lista de contenedor limpia, plantillas de un clic y un panel de configuración que incluye límites de CPU y memoria sin el área de superficie adicional de administración de pilas u orquestación de múltiples hosts. Las plantillas viven en archivos JSON y se pueden compartir en la comunidad, lo que facilita la implementación de una imagen con límites razonables incorporados.
Para un único host de Docker donde se preocupa principalmente por iniciar, detener, limitar y actualizar contenedores, Yacht es más rápido de aprender que Portainer y mantiene todo el flujo dentro de dos o tres pantallas.
Donde se queda corta: El desarrollo es mucho más lento que el de Portainer o Dockge, y el proyecto ha estado en una larga beta. Multiple-host no está en el plan. Algunas características de Docker más nuevas llegan más tarde aquí que en las herramientas más grandes.
Precio: Gratis, código abierto.
Plataformas: Se ejecuta en cualquier lugar donde se ejecute Docker. Acceso al navegador desde cualquier escritorio.
Descargar: GitHub
Conclusión: Una interfaz web ordenada para un único host de Docker cuando Portainer se siente excesivo.
7. Lazydocker, mejor interfaz de terminal para triaje rápido
Lazydocker no es un gestor, es un monitor con brazos. Inicie en una terminal y obtendrá una vista controlada por teclado de cada contenedor con gráficos de CPU, memoria, I/O de bloque y red en vivo, además de paneles de estadísticas, registros y un atajo de shell. Cuando un contenedor sube, lazydocker le muestra cuál en segundos, y puede reiniciar, detener o abrir un shell sin abandonar el panel.
Para establecer límites reales, baja a un shell (e abre el contenedor en $EDITOR o docker exec) y usa docker update --cpus 2 --memory 1g <name> o edita el archivo compose. Es la herramienta que mantiene en una división tmux junto a cualquier interfaz web que sea su principal.
Donde se queda corta: Sin interfaz de edición para compose o límites de ejecución, debe escribir CLI. Solo Docker, sin Kubernetes.
Precio: Gratis, código abierto bajo licencia MIT.
Plataformas: Windows (a través de WSL o PowerShell), macOS, Linux. Instala a través de Homebrew, Scoop, Nix o un binario de Go.
Descargar: GitHub
Conclusión: La forma más rápida de ver qué contenedor se está portando mal ahora mismo, y ejecutar el docker update que lo limita.
Cómo elegir el correcto
- Si ejecuta Docker en más de una máquina y desea un panel: Portainer.
- Si sus pilas ya viven en archivos compose: Dockge.
- Si usa Docker Desktop y desea comenzar con el límite más seguro primero: Panel de Recursos de Docker Desktop, luego superponga otra herramienta encima.
- Si usted o alguien a quien ayuda es nuevo en homelabs: CasaOS.
- Si CasaOS se siente demasiado simple y Portainer demasiado crudo: Runtipi.
- Si desea la interfaz web más ligera en un host: Yacht.
- Si vive en una terminal y desea una imagen en tiempo real de lo que está comiendo CPU: Lazydocker.
La mayoría de los auto-alojadores terminan con dos. Una interfaz web para establecer límites y leer estado, más Lazydocker en una terminal de repuesto para el momento en que un contenedor comienza a portarse mal.
FAQ
¿Cuál es la mejor aplicación gratuita para administrar contenedores Docker en escritorio?
Portainer Community Edition es la opción gratuita más sólida porque cubre edición de contenedores, pilas, múltiples hosts y estadísticas en vivo en una interfaz de navegador sin muro de pago. Para un flujo de trabajo enfocado en compose, Dockge es la mejor opción gratuita.
¿Cómo establezco un límite de CPU y memoria en un contenedor Docker?
En un archivo compose, agregue deploy.resources.limits.cpus: '2.0' y deploy.resources.limits.memory: 1G bajo el servicio, o use el antiguo nivel superior cpus: 2.0 y mem_limit: 1g. En un contenedor en ejecución, docker update --cpus 2 --memory 1g <name> aplica el cambio sin un reinicio. Portainer, Dockge, CasaOS, Runtipi y Yacht exponen estos ajustes en la interfaz.
¿Puede Docker Desktop limitar contenedores individuales?
El panel Recursos de Docker Desktop limita toda la máquina virtual Docker en Windows y macOS, no contenedores individuales. Los límites por contenedor aún provienen de archivos compose, banderas docker run o un gestor como Portainer que se ejecuta en el mismo motor.
¿Es mejor Portainer o Dockge para un hogar laboratorio?
Portainer si tiene más de un host Docker o desea un gestor de contenedor completo. Dockge si todos sus servicios ya viven en archivos compose en un único host y desea el ciclo de edición más rápido. Muchos homelabbers instalan ambos y usan cada uno para lo que hace mejor.
¿Cuál es la diferencia entre CasaOS y Runtipi?
Ambos son capas de SO homelab de instalación de una línea con una tienda de aplicaciones seleccionada y configuración por aplicación. CasaOS es más fácil de usar para principiantes con un ritmo de cambio más lento; Runtipi abre más configuración y envía aplicaciones nuevas más rápido. Pruebe CasaOS primero si la simplicidad importa, Runtipi si planea ajustar las cosas.
¿Funcionan estas herramientas en WSL en Windows?
Sí. Cualquiera de los siete se ejecuta en un contenedor en un motor Docker dentro de WSL 2, y accede a la interfaz web desde un navegador Windows en localhost. Lazydocker también se ejecuta directamente dentro del shell de WSL.