Commit Graph

5 Commits

Author SHA1 Message Date
Andrés Eduardo García Márquez 4af01f1008 fix(docker): update to .NET 10 SDK for k3s deployment
- Update Dockerfile.api to use dotnet/sdk:10.0-alpine
- Update runtime to aspnet:10.0-alpine
- Add deploy-k3s.sh script for manual deployments
2026-01-08 11:30:24 -05:00
Andrés Eduardo García Márquez a98862add8 feat: add CI/CD pipeline, password recovery, and QA improvements
- Add Gitea Actions workflow for automated k3s deployment
- Implement password recovery with recovery codes (no email needed)
- Fix unenroll mutation (missing studentId parameter)
- Fix dashboard handling for expired sessions
- Add optimized Docker builds with caching
- Add k3s all-in-one deployment manifest
- Add QA test report and recommendations
2026-01-08 10:49:32 -05:00
Andrés Eduardo García Márquez a899f3f19b fix(k8s): optimize API and frontend resource configuration
API deployment:
- Add .NET GC optimization flags (gcServer=0, GCConserveMemory=9)
- Increase memory requests/limits for stability
- Add GCHeapCount and gcConcurrent settings

Frontend deployment:
- Adjust resource limits for better stability
- Update probe configurations
2026-01-08 00:01:49 -05:00
Andrés Eduardo García Márquez bbeea1ae24 fix(k8s): increase SQL Server memory to prevent OOMKilled
- Increase memory limit from 1Gi to 1.5Gi
- Increase MSSQL_MEMORY_LIMIT_MB from 768 to 1024
- Increase liveness probe initialDelaySeconds to 120
- Increase failureThreshold to 5 for more tolerance
- Increase readiness probe timeouts

Fixes DEF-001: SQL Server was crashing with Exit Code 137 (OOMKilled)
due to insufficient memory allocation for SQL Server 2022 Express.
2026-01-08 00:01:39 -05:00
Andrés Eduardo García Márquez c0a47c2ba6 feat(deploy): add Docker and Kubernetes deployment
Docker:
- Multi-stage Dockerfile for API (.NET 10)
- Multi-stage Dockerfile for frontend (Angular + Nginx)
- docker-compose.yml with resource optimization
- Nginx reverse proxy configuration
- Health checks for all services

Kubernetes (k3s):
- Namespace and ConfigMap
- SQL Server StatefulSet with PVC
- API Deployment with HPA
- Frontend Deployment
- Services and Ingress
- Network policies for security
- Secrets management

Resource optimization:
- SQL Server Express with 1GB RAM limit
- API with 512MB limit
- Frontend with 128MB limit
2026-01-07 23:00:41 -05:00