
Un escritor de XDA-Developers pasó un fin de semana conectando su servidor Docker a un conjunto de LLM locales y se fue con una estación de trabajo que ahora se gestiona a sí misma. La lección que el artículo hace silenciosamente es la que importa: Docker es la unidad de trabajo correcta para la IA local. Extrae una imagen del servidor de modelos, extrae una interfaz de usuario, pégalas con un archivo compose, y todo es reproducible en máquinas y reinicios. No más arqueología de virtualenv de Python después de la siguiente actualización de CUDA.
Probamos las mejores aplicaciones para flujos de trabajo de LLM auto-hospedados que se ajustan a ese patrón. Cada opción en esta lista incluye una imagen oficial, mantiene el estado a través de un volumen nombrado, y se adapta a un archivo compose junto a Postgres, Redis y un proxy inverso sin sorpresas. Calificamos lo aburrido: qué tan rápido un docker compose up fresco llega a un chat que funciona, qué tan bien funciona el paso de GPU, si la imagen funciona bien con Docker sin raíz y Podman, y cuánta memoria pierde cada contenedor cuando un modelo se bloquea.
Qué buscar en una pila LLM auto-hospedada
Algunos rasgos separan los contenedores que obtienen un lugar permanente en su archivo compose de los que se arrancan después de una semana:
- Compatibilidad con OpenAI-API. El formato de cable de facto. Si un contenedor lo habla, cada cliente existente (extensión de editor, marco de agent, notebook) funciona sin cambios de código.
- Imagen Docker oficial. Las imágenes construidas por el mantenedor se reconstruyen en divulgaciones de CVE y se etiquetan contra versiones ascendentes. Los fork comunitarios quedan atrás y se desplazan.
- Paso de GPU. NVIDIA Container Toolkit en Linux, ROCm donde se admita, Apple Silicon a través de inferencia en host. Las imágenes más fuertes documentan la invocación exacta de
--gpus ally vienen con valores predeterminados sensatos. - Convenciones de volumen persistente. Los modelos son grandes. Un punto de montaje predecible (
/root/.ollama,/app/backend/data) mantiene tudocker-compose.ymlcorto y tus copias de seguridad simples. - OpenTelemetry y registro estructurado. Cualquier cosa que se ejecute en producción necesita traces y registros JSON listos para usar, no solo charla en stdout.
- Autenticación multiusuario. Un laboratorio casero supera el modo de un solo usuario en el momento en que una segunda persona quiere entrar. SSO, OIDC o al menos hash de contraseña real importa.
Comparación rápida
| Aplicación | Capa | Plan gratuito | Nivel pagado | Imagen Docker |
|---|---|---|---|---|
| Ollama | Servidor de modelos | Sí (open source) | Ninguno | ollama/ollama |
| Open WebUI | Chat UI | Sí (open source) | Ninguno | ghcr.io/open-webui/open-webui |
| LocalAI | Servidor de modelos (multimodal) | Sí (open source) | Ninguno | localai/localai |
| LiteLLM | Gateway / proxy | Sí (open source) | Empresa | ghcr.io/berriai/litellm |
| vLLM | Inferencia de producción | Sí (open source) | Ninguno | vllm/vllm-openai |
| Text Generation WebUI | Interfaz de usuario de Tinkerer | Sí (open source) | Ninguno | atinoda/text-generation-webui |
| AnythingLLM | Espacio de trabajo full-stack | Sí (open source) | Plan alojado | mintplexlabs/anythingllm |
Las 7 mejores aplicaciones para LLM auto-hospedado con Docker en 2026
1. Ollama — mejor servidor de modelos para laboratorio casero
Ollama es lo más cercano que tiene la categoría a “Docker para LLM”. La imagen oficial es pequeña, el daemon expone una API compatible con OpenAI en localhost:11434, y un único docker exec ollama ollama pull llama3.2 es todo lo que se necesita para agregar un modelo. La biblioteca cubre más de 4500 compilaciones etiquetadas en las familias populares con cuántos predeterminados sensatos, y la historia de GPU está bien documentada tanto para anfitriones NVIDIA como AMD.
Dónde se queda corto: Ollama es un runtime, no una aplicación de chat. La imagen no incluye interfaz de usuario, así que la emparejas con Open WebUI u otro front-end. El formato Modelfile es potente pero introduce un paso de compilación cuando deseas un aviso del sistema personalizado.
Precios:
- Gratis: código abierto, sin tarifa de licencia
- Pagado: ninguno
Plataformas: Contenedor Linux; se ejecuta en hosts Windows, macOS y Linux a través de Docker.
Descargar: ollama.com
Conclusión: Elige Ollama como capa de servidor de modelos de cualquier pila auto-hospedada. Nada más es tan fácil de conectar a un archivo compose.
2. Open WebUI — mejor interfaz de chat para poner frente a Ollama
Open WebUI es el front-end que la comunidad de Ollama ha estandarizado. El contenedor incluye una interfaz pulida al estilo ChatGPT con cuentas multiusuario, cambio de modelo por conversación, RAG sobre documentos cargados, soporte de herramientas MCP y un sistema de extensiones que agrega generación de imágenes, búsqueda web e interpretación de código. La imagen oficial funciona de inmediato detrás de un proxy inverso con HTTPS y OIDC.
Dónde se queda corto: Asume un backend separado, por lo que nunca funciona solo. La superficie de configuración es amplia, lo que puede abrumar a los administradores primerizos que solo quieren un cuadro de chat.
Precios:
- Gratis: código abierto, sin tarifa de licencia
- Pagado: ninguno
Plataformas: Contenedor Linux; se ejecuta en hosts Windows, macOS y Linux a través de Docker.
Descargar: openwebui.com
Conclusión: Elige Open WebUI como capa de chat-UX para configuración de hogar o equipo pequeño. Es la interfaz basada en navegador más limpia de la categoría.
3. LocalAI — mejor drop-in multimodal para OpenAI
LocalAI es un reemplazo drop-in para la API de OpenAI que maneja texto, imagen, audio e incrustaciones a través de un único endpoint. Un solo contenedor puede servir una finalización de chat Llama, una transcripción de Whisper, una imagen de Stable Diffusion y una llamada de sentence-embedding sin malabarismo con servicios separados. Los paquetes de modelos se instalan con un one-liner, y el proyecto incluye imágenes de GPU para CUDA y ROCm.
Dónde se queda corto: La amplitud cuesta rendimiento. Una carga de trabajo que golpea una modalidad a menudo se ejecuta más rápido en un servidor dedicado (vLLM para texto, un contenedor de difusión separado para imagen). La configuración es pesada en YAML, lo que hace que los principiantes tropiecen.
Precios:
- Gratis: código abierto, sin tarifa de licencia
- Pagado: ninguno
Plataformas: Contenedor Linux; se ejecuta en hosts Windows, macOS y Linux a través de Docker.
Descargar: localai.io
Conclusión: Elige LocalAI cuando un contenedor necesita servir múltiples modalidades detrás de una única URL compatible con OpenAI.
4. LiteLLM — mejor gateway para pila mixta
LiteLLM es un proxy ligero que asigna 100+ proveedores (OpenAI, Anthropic, Vertex, Bedrock, Ollama, vLLM, LocalAI) a una única API compatible con OpenAI. Colócalo frente a tus backends locales y claves API remotas, apunta cada cliente al proxy, y obtendrás registro unificado, presupuestos, claves por usuario, límites de velocidad y reglas de enrutamiento en un solo lugar. El contenedor es pequeño y la interfaz de usuario del administrador es competente.
Dónde se queda corto: La imagen gratuita tiene todo lo que necesita la mayoría de laboratorios caseros, pero SSO, registros de auditoría y enrutamiento avanzado están detrás del nivel Empresa. La configuración a través de config.yaml crece rápidamente una vez que agrega más de un par de modelos.
Precios:
- Gratis: auto-hospedaje de código abierto
- Pagado: Plan Empresa con SSO, registros de auditoría y soporte
Plataformas: Contenedor Linux; se ejecuta en hosts Windows, macOS y Linux a través de Docker.
Descargar: litellm.ai
Conclusión: Elige LiteLLM en el momento en que tu pila tenga más de dos backends. El patrón de gateway es lo que mantiene el resto del sistema cordial.
5. vLLM — mejor motor de inferencia para carga de producción
vLLM es el servidor de inferencia de alto rendimiento al que se acuden la mayoría de los equipos cuando el tráfico se vuelve real. PagedAttention y batching continuo empujan tokens por segundo mucho más allá de servidores ingenuos en el mismo hardware, y la API compatible con OpenAI significa que los clientes existentes funcionan sin cambios. La imagen oficial vllm/vllm-openai es la que debes usar, y el proyecto documenta las combinaciones exactas de driver NVIDIA y CUDA que funcionan.
Dónde se queda corto: La imagen es grande. El servidor espera una GPU NVIDIA con VRAM razonable, por lo que no es apto para portátiles u hosts solo CPU. La configuración se inclina hacia “ingeniero de producción” en lugar de “bricolador de fin de semana”.
Precios:
- Gratis: código abierto, sin tarifa de licencia
- Pagado: ninguno
Plataformas: Contenedor Linux; se ejecuta en hosts Windows, macOS y Linux a través de Docker con NVIDIA Container Toolkit.
Descargar: vllm.ai
Conclusión: Elige vLLM como servidor de modelos cuando la concurrencia y el rendimiento importan más que el tiempo de configuración de cinco minutos.
6. Text Generation WebUI — mejor parque de atracciones para aficionados
Text Generation WebUI (el proyecto que la mayoría de la gente aún llama oobabooga) es la opción todo incluido. El contenedor agrupa múltiples backends (Transformers, llama.cpp, ExLlamaV2), cada muestreador bajo el sol, tarjetas de personajes, ganchos de entrenamiento LoRA y un sistema de extensiones que agrega RAG y voz. Los investigadores que se preocupan por el ajuste del muestreador, la decodificación contrastiva o formatos de cuantos oscuros aterrizan aquí.
Dónde se queda corto: La imagen oficial es más grande que el resto, el baile de dependencia del primer arranque toma más tiempo, y la superficie de la interfaz es densa. Nada de esto importa si viniste por los botones, pero importa si solo quieres un cuadro de chat.
Precios:
- Gratis: código abierto, sin tarifa de licencia
- Pagado: ninguno
Plataformas: Contenedor Linux; se ejecuta en hosts Windows, macOS y Linux a través de Docker.
Descargar: github.com/oobabooga/text-generation-webui
Conclusión: Elige Text Generation WebUI cuando quieras cada dial expuesto y una noche para jugar con ellos.
7. AnythingLLM — mejor herramienta de espacio de trabajo de un contenedor
AnythingLLM es la rara opción full-stack: una imagen, un volumen, y el resultado es un espacio de trabajo multiusuario con RAG, agentes, permisos de alcance de espacio de trabajo y un selector de modelo traiga-su-propio-LLM que apunta a Ollama, LocalAI, vLLM, OpenAI y Anthropic. El contenedor maneja la base de datos vectorial, la canalización de ingesta de documentos, la interfaz de usuario del chat y el tiempo de ejecución del agente en un solo proceso. Para un equipo que quiere un “ChatGPT interno con documentos” sin montar cuatro servicios, este es el camino más corto.
Dónde se queda corto: El enfoque todo en uno intercambia flexibilidad por simplicidad. Las cargas de trabajo RAG pesadas se benefician de una base de datos vectorial dedicada, y muy grandes números de usuarios superarán la pila integrada. Existe un plan alojado para equipos que prefieren no operar el contenedor.
Precios:
- Gratis: auto-hospedaje de código abierto
- Pagado: plan alojado con actualizaciones administradas y almacenamiento
Plataformas: Contenedor Linux; se ejecuta en hosts Windows, macOS y Linux a través de Docker.
Descargar: anythingllm.com
Conclusión: Elige AnythingLLM cuando un equipo necesita un ChatGPT privado con documentos y “un contenedor” es el presupuesto operacional.
Cómo elegir el correcto
Si ejecutas un laboratorio casero en solitario y deseas la pila más simple, ejecuta Ollama más Open WebUI detrás de un proxy inverso. Dos contenedores, una red, chat completo con documentos.
Si tu equipo tiene más de dos backends o un presupuesto que realmente quieres aplicar, coloca LiteLLM frente a todo y apunta a los clientes al proxy.
Si la carga de trabajo es de grado de producción (concurrencia real, objetivos de latencia reales), sirve texto con vLLM detrás de LiteLLM, y deja que Ollama o LocalAI manejen máquinas de desarrolladores.
Si la pila necesita más que texto (transcripción, generación de imágenes, incrustaciones) en un endpoint, LocalAI mantiene el área de superficie pequeña.
Si el objetivo es “ChatGPT interno de equipo con nuestros documentos” y el presupuesto operacional es un contenedor, AnythingLLM es la línea más corta entre A y B.
Si viniste por los botones y una noche de experimentación de muestreador, Text Generation WebUI está hecha para ti.
FAQ
¿Necesito una GPU para alojar un LLM con Docker?
Para inferencia cómoda en modelos 7B y 14B, sí. Los contenedores solo CPU funcionan para cuántos más pequeños y uso casual. Los hosts NVIDIA son el camino más suave; la compatibilidad con AMD ROCm es real pero más estrecha; Apple Silicon generalmente ejecuta el modelo en el host (a través de Ollama o LM Studio) en lugar de dentro del contenedor.
¿Cuál es el archivo compose mínimo para un LLM auto-hospedado que funcione?
Dos servicios: un contenedor Ollama con un volumen nombrado montado en /root/.ollama y un puerto publicado en 11434, y un contenedor Open WebUI con OLLAMA_BASE_URL configurado en el servicio Ollama. Todo encaja en alrededor de 25 líneas de YAML.
¿Qué contenedor debo colocar frente a todos los demás?
Un gateway como LiteLLM, detrás de un proxy inverso (Caddy, Traefik o nginx) que maneje HTTPS. Los clientes golpean el proxy con una URL base y una clave. LiteLLM se enruta a Ollama, vLLM o cualquier proveedor remoto en función del nombre del modelo.
¿Puedo compartir un LLM auto-hospedado con varias personas?
Sí. Open WebUI y AnythingLLM ambos apoyan cuentas multiusuario con control de acceso basado en roles y permisos por espacio de trabajo. Empareja cualquiera con LiteLLM si también deseas claves API por usuario para acceso programático.
¿Cómo hago que los modelos y el historial de chat persistan en los reinicios del contenedor?
Monta volúmenes nombrados en las rutas documentadas: /root/.ollama para modelos Ollama, /app/backend/data para estado de Open WebUI, /app/server/storage para AnythingLLM. Haz una copia de seguridad de esos volúmenes como cualquier otro directorio de datos; los archivos del modelo son la pieza más grande por un orden de magnitud.
¿Es realmente más barato alojar un LLM con Docker que usar una API?
Depende del volumen. Una RTX 3090 usada más electricidad vence al precio de la API alojada una vez que tu equipo produce más de cientos de miles de tokens por día. Por debajo de eso, las API alojadas suelen ser más baratas que el hardware amortizado. El auto-hospedaje gana en privacidad y previsibilidad antes de ganar en costo.