DEV Community

Cover image for ✨Corre tu propio ChatGPT local con Docker y sin complicaciones ✨
🦄 Maris Botero✨
🦄 Maris Botero✨

Posted on • Edited on

✨Corre tu propio ChatGPT local con Docker y sin complicaciones ✨

✨ Introducción

¿Te imaginas tener una IA que entienda lenguaje natural funcionando completamente local en tu computador, sin conexión a internet ni claves de API?
En este artículo te guiaré paso a paso para que lo logres usando Docker Model Runner y Open WebUI, dos herramientas que hacen que la inteligencia artificial sea accesible para todos.

⚙️ ¿Qué tecnología estamos usando?

Antes de comenzar, vamos a entender qué hace cada parte:

🐳 Docker

Es una plataforma que te permite crear, correr y compartir aplicaciones dentro de contenedores. En este caso, nos permite ejecutar un modelo de lenguaje sin necesidad de instalar librerías complicadas.

🧠 Docker Model Runner

Es una funcionalidad reciente de Docker que automatiza la descarga, ejecución y exposición de modelos de IA como servicios, usando un archivo docker-compose.yaml.

Piensa en esto como tener una pequeña fábrica de modelos: tú le dices cuál quieres usar y Docker se encarga de traerlo y ponerlo a trabajar.

🖥️ Open WebUI

Es una interfaz gráfica amigable (como un mini ChatGPT) que se conecta al modelo que corre dentro del contenedor. Te permite escribirle al modelo y recibir respuestas sin tener que tocar código.

🧰 ¿Qué necesitas?

  • Docker Desktop (versión 4.40 o superior)
  • Un computador con al menos 8 GB de RAM (preferiblemente con GPU)
  • Conexión a internet solo para descargar el modelo
  • Ganas de experimentar 🌟

🔧 Paso 1: Activa Docker Model Runner

docker desktop enable model-runner --no-tcp

Enter fullscreen mode Exit fullscreen mode

📦 Paso 2: Descarga tu primer modelo de lenguaje

docker model pull ai/gemma3-qat:1B-Q4_K_M

Enter fullscreen mode Exit fullscreen mode

🧬 Paso 3: Crea tu archivo docker-compose.yaml

services:
  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    ports:
      - "3000:8080"
    environment:
      - OPENAI_API_BASE_URL=http://model-runner.docker.internal:80/engines/llama.cpp/v1
      - OPENAI_API_KEY=na
    volumes:
      - open-webui-data:/app/backend/data
    depends_on:
      - ai-runner

  ai-runner:
    provider:
      type: model
      options:
        model: ai/gemma3-qat:1B-Q4_K_M

volumes:
  open-webui-data:

Enter fullscreen mode Exit fullscreen mode

▶️ Paso 4: Levanta el entorno▶️ Paso 4: Levanta el entorno

docker compose up

Enter fullscreen mode Exit fullscreen mode

Verás que Docker descarga y prepara todo. Cuando veas el mensaje:

Model loaded in Xs
Listening on 0.0.0.0:8080

Enter fullscreen mode Exit fullscreen mode

¡Todo está listo!

🌐 Paso 5: Abre tu interfaz mágica

Abre tu navegador en:

👉 http://localhost:3000

1. Crea un usuario

2. Selecciona el modelo

3. ¡Pregunta lo que quieras! 🎉

📚 Recursos útiles

🐳 Docker

💻 Repositorio del taller

Top comments (0)