Español
Configuración
Novodat se configura con variables de entorno. No tiene un archivo de configuración propio ni hace falta tocar la base de datos para empezar.
Dónde se definen
| Cómo ejecutas Novodat | Dónde van las variables |
|---|---|
| Imagen Docker | Un archivo de entorno pasado con --env-file (parte de docker/novodat.env.example), o environment: en Compose |
| Desde el código | El entorno del proceso, o un archivo .env en la raíz del repositorio |
| Plataformas (Kubernetes, PaaS…) | El entorno del contenedor, con los secretos del almacén de secretos de la plataforma |
Cómo se leen los valores
- Se validan al arrancar el servidor. Si falta uno o es incorrecto, Novodat no arranca y el mensaje nombra cada variable incorrecta (nunca su valor).
- Vacío significa no definido.
CORS_ORIGIN=es lo mismo que no escribir la línea, así que se aplica el valor por defecto. - Los valores de sí/no aceptan
true/false,1/0,yes/noyon/off. - Las listas van separadas por comas:
CORS_ORIGIN=https://a.example.com,https://b.example.com. - Las duraciones de la retención son un número entero y una unidad:
s,m(minutos),h,d,woy(365 días), como90do12h. Los demás tiempos son números de segundos, como indica cada tabla. - Los cambios necesitan reiniciar. Los valores se leen una vez, al arrancar el proceso.
Lo mínimo
ini
DB_CLIENT=pg
DB_HOST=localhost
DB_DATABASE=novodat
DB_USER=novodat
DB_PASSWORD=cambiame
SECRET=un-valor-aleatorio-de-al-menos-32-caracteres
PUBLIC_URL=https://datos.ejemplo.com
# Solo para el primer arranque: el administrador que se crea
ADMIN_EMAIL[email protected]
ADMIN_PASSWORD=cambiame-tambienGenera SECRET con openssl rand -base64 48. Firma los tokens de acceso y cifra las claves de IA guardadas desde el Desk: mantenlo en secreto y no lo cambies.
Referencia
| Página | Qué cubre |
|---|---|
| Base de datos | Motor, conexión, pool, schemas de PostgreSQL |
| Servidor | SECRET, PUBLIC_URL, puerto, logs, Desk, CORS, mapa base |
| Seguridad | Duración de los tokens, límites de peticiones, proxies |
| Inicio de sesión único | OpenID Connect, OAuth 2.0, SAML y LDAP |
| Correo | SMTP y recuperación de contraseñas |
| Archivos | Ubicaciones de almacenamiento (local, S3, Azure, Google Cloud) y transformaciones de imágenes |
| Caché y Redis | Caché del esquema, varias instancias, trabajos en segundo plano |
| GraphQL y WebSockets | Límites de las consultas y suscripciones en tiempo real |
| Flows y extensiones | Límites de los flows, carga de extensiones, variables que pueden leer |
| IA y MCP | Modelos de lenguaje y de embeddings, búsqueda vectorial, servidor MCP |
| Retención | Limpieza automática del registro de actividad, las revisiones y las ejecuciones de flows |