Files
qlockify-core-deployment/README.md

45 lines
1.2 KiB
Markdown

# Qlockify Deployment
This repository is the deployment layer only.
Docker builds read from the local `./backend` and `./frontend` directories inside this repository.
Those directories are expected to contain the backend and frontend application source before you build for deployment.
## Local structure
The expected deployment layout is:
```text
qlockify-deployment/
backend/
frontend/
nginx/
postgres/
docker-compose.yml
```
## Deployment flow
1. Put your application source into:
- `./backend`
- `./frontend`
2. Configure deployment env files:
- `./.env`
- `./backend/.env`
- `./frontend/.env`
3. From `qlockify-deployment`, build and start the stack:
```powershell
docker compose up --build
```
The backend container runs database migrations and `collectstatic` on startup, then serves Django with Gunicorn using `config.wsgi:application`.
## SSE Notifications
Notifications now use Server-Sent Events at `/api/notifications/stream/`.
- Nginx disables buffering and cacheing for the SSE endpoint.
- The current Gunicorn setup can serve SSE for MVP traffic, but each live stream consumes a worker while connected.
- If notification concurrency grows, move the SSE endpoint to an async worker class or a dedicated ASGI process.