Host con Docker
Cualquier servidor que ejecute imágenes Docker. Ollama necesita internet de salida una vez,
para hacer ollama pull de tus modelos; después todo es local.
Secretia es una distribución: ejecuta las imágenes oficiales de Ollama y Open WebUI y le agrega una pequeña capa de identidad. Elige el camino que se adapte a tu host — un Compose de un solo archivo, o tres servicios separados (la opción más cómoda en EasyPanel).
Host con Docker
Cualquier servidor que ejecute imágenes Docker. Ollama necesita internet de salida una vez,
para hacer ollama pull de tus modelos; después todo es local.
Suficiente RAM
Un modelo de 7–8B necesita aproximadamente 4–5 GB. Funciona solo con CPU; una GPU es mucho más rápida.
Un secreto de sesión
Una cadena aleatoria larga para Open WebUI (openssl rand -hex 32). Para el SSO, los datos del
cliente de Lockatus (opcional).
EasyPanel prefiere servicios separados antes que un Compose. Crea un proyecto y tres servicios:
ollama — App → Docker Image ollama/ollama:latest. Monta un volumen en
/root/.ollama. Sin dominio (interno).open-webui — App → Docker Image ghcr.io/open-webui/open-webui:main. Monta
/app/backend/data. Define las variables de entorno (abajo). Sin dominio (interno).secretia — App → GitHub diegoparras/secretia, Build = Dockerfile. Define
OPEN_WEBUI_UPSTREAM=open-webui:8080. Asigna tu dominio público → puerto 8080.Dentro de un mismo proyecto, los servicios se alcanzan entre sí por nombre (http://ollama:11434,
open-webui:8080). El checklist completo vive en el DEPLOY.md del repositorio.
git clone https://github.com/diegoparras/secretia.git && cd secretiacp .env.example .env # set WEBUI_URL, WEBUI_SECRET_KEY and the OAUTH_* varsdocker compose up -dEl compose levanta Ollama, Open WebUI y el nginx de identidad juntos; solo se publica el servicio
de identidad (puerto 8080).
¿Quieres el camino más simple? Ejecuta solo ollama + open-webui y apunta tu dominio
directamente a open-webui (puerto 8080). Conservas el nombre “Secretia” y el login de Lockatus,
pero pierdes el acento magenta — eso es lo que agrega el servicio de identidad.
| Variable | Ejemplo | Descripción |
|---|---|---|
OLLAMA_BASE_URL | http://ollama:11434 | Dónde vive el motor de modelos (hostname interno). |
WEBUI_NAME | Secretia | El nombre de la app que se muestra en la UI. |
WEBUI_URL | https://your-domain | URL pública — se usa para construir las redirecciones OIDC. |
WEBUI_SECRET_KEY | (aleatorio) | Clave de sesión/cripto. openssl rand -hex 32. Mantenla en secreto. |
ENABLE_SIGNUP | false | Registro local desactivado — las cuentas entran por Lockatus. |
ENABLE_OAUTH_SIGNUP | true | Crea un usuario automáticamente en el primer login con Lockatus. |
OAUTH_CLIENT_ID | secretia | Slug de la app registrado en Lockatus. |
OAUTH_CLIENT_SECRET | (secreto) | El secreto registrado en Lockatus. |
OPENID_PROVIDER_URL | …/.well-known/openid-configuration | URL de descubrimiento de Lockatus. |
OPENID_REDIRECT_URI | https://your-domain/oauth/oidc/callback | Debe coincidir con la registrada en Lockatus. |
El servicio de identidad toma una sola variable: OPEN_WEBUI_UPSTREAM (default open-webui:8080).
ollama, descarga un modelo:ollama pull llama3.1:8b # or qwen2.5:7b, or llava:7b for imagesEl modelo aparece solo en el selector de Secretia.