Files
GenExam-IA/backend/.env.example
T
Mireya Cueto Garrido d06b961a73 Use Sinbad2 production ports 8068 (backend) and 8069 (frontend).
Apache ProxyPass targets host port 8069; update compose, CI, CORS defaults, deployment docs, and production .env files for https://sinbad2.ujaen.es/generadorexamenesllm/.
2026-06-03 12:13:02 +02:00

58 lines
2.0 KiB
Bash

# --- Aplicación ---
APP_NAME=GenExamenes IA
ENVIRONMENT=production
# URL pública HTTPS (Apache termina TLS; contenedores en HTTP interno)
PUBLIC_BASE_URL=https://sinbad2.ujaen.es/generadorexamenesllm
# Hosts aceptados por TrustedHostMiddleware (sin esquema ni puerto)
TRUSTED_HOSTS=sinbad2.ujaen.es,localhost,127.0.0.1
# HSTS (segundos; 1 año por defecto)
SECURITY_HSTS_SECONDS=31536000
# Clave legacy (reservada; las rutas /exam usan JWT de usuario).
API_KEY=change-me-in-production-min-16-chars
# --- Base de datos (Docker: host "db") ---
DATABASE_URL=postgresql+psycopg://genexamenes:genexamenes@db:5432/genexamenes
# --- CORS (orígenes HTTPS del frontend; separados por coma) ---
ALLOWED_ORIGINS=https://sinbad2.ujaen.es,http://sinbad2.ujaen.es,http://sinbad2.ujaen.es:8069
# --- Rate limiting y tamaño de petición ---
RATE_LIMIT_REQUESTS=60
RATE_LIMIT_WINDOW_SECONDS=60
MAX_REQUEST_BYTES=25165824
# --- Materiales de contexto (PDF, DOCX, imágenes, etc.) ---
UPLOAD_DIR=/app/uploads
MAX_UPLOAD_BYTES=20971520
MAX_MATERIALS_PER_TEMPLATE=10
MAX_REFERENCE_CHARS=12000
# --- Imágenes de examen (preguntas visuales, sin extracción OCR) ---
MAX_IMAGE_BYTES=5242880
MAX_IMAGES_PER_TEMPLATE=20
# Cupo total por examen (materiales + imágenes). 50 MB por defecto.
MAX_STORAGE_BYTES_PER_TEMPLATE=52428800
# --- JWT (login email/contraseña y sesión tras Google) ---
JWT_SECRET_KEY=change-me-use-a-long-random-secret-key-at-least-32-chars
JWT_ALGORITHM=HS256
JWT_EXPIRE_MINUTES=1440
# --- Google Sign-In ---
# Client ID de OAuth 2.0 (tipo "Aplicación web") en Google Cloud Console.
# El frontend obtiene un id_token con Google Identity Services y lo envía a POST /auth/google.
GOOGLE_CLIENT_ID=123456789012-abcdefghijklmnopqrstuvwxyz123456.apps.googleusercontent.com
# --- LLM (Sinbad2IA UJA — sin clave) ---
# URL base del servidor; el cliente llama a {LLM_BASE_URL}/api/chat
LLM_BASE_URL=
LLM_MODEL=qwen3.5:35b
LLM_TIMEOUT_SECONDS=180
# Opcional, solo si el servidor exige autenticación:
# LLM_API_KEY=