- Convertir imágenes hardcodeadas a variables (REG, REPO_OWNER)
- Agregar variables APP_NAME y APP_DOMAIN al workflow
- Agregar flag --wait al despliegue para esperar contenedores listos
- Pasar variables de entorno (RADIUS_*) explícitamente en cada paso
- Agregar paso informativo sobre el deployment
- Simplificar comandos docker compose (sin -f innecesario)
- Corregir indentación del docker-compose.yml
- Eliminar paso redundante "Show service status"
Estos cambios hacen que el workflow sea más robusto y consistente
con el patrón usado en analiticaNucleo.
Problema: El callback /outpost.goauthentik.io/callback estaba en el router
público sin middleware de Authentik, causando que llegara directamente
a Node.js → 404 Error
Solución: Quitar /outpost.goauthentik.io del router público para que
el callback pase por el router principal con el middleware
authentik-forward-auth@file, que maneja correctamente el flujo OAuth
Problema:
- Los assets (CSS/JS) estaban siendo bloqueados por Authentik
- El servidor devolvía HTML (página de login) en lugar de CSS
- Error: MIME type 'text/html' is not a supported stylesheet
Solución:
- Crear dos routers en Traefik:
1. Router público (prioridad 100): /assets, /icons, manifest, favicon SIN autenticación
2. Router principal (prioridad 10): Todo lo demás CON autenticación
- Los assets estáticos ahora se sirven directamente sin pasar por Authentik
- Mantiene la seguridad para el resto de la aplicación
Rutas públicas: /assets/*, /.well-known/*, /icons/*, /manifest.webmanifest, /favicon.ico
- Agregar labels de Traefik al servicio radiusnucleo-node para exposición en wifi.nucleoriofrio.com
- Configurar autenticación con Authentik y soporte para SSE/WebSocket
- Renombrar servicio node a radiusnucleo-node con container_name explícito
- Actualizar redes a radiusnucleo_radius_net como externa
- Consolidar workflow de Gitea en un solo job build-and-deploy
- Agregar creación automática de red radiusnucleo_radius_net en workflow