Deployment¶
This guide covers deploying MedUX in a production environment.
Warning
MedUX is in pre-alpha. The deployment process is not yet finalized. This page documents the general approach — details will be updated as the project matures.
Recommended Stack¶
| Component | Recommendation |
|---|---|
| Web server | Nginx (reverse proxy) |
| ASGI server | Daphne |
| Database | PostgreSQL |
| Channel layer | Redis (for WebSocket) |
| Process manager | systemd |
| Python packages | uv |
General Steps¶
- Install MedUX — see Installation
- Configure — set environment variables in
.env(see Configuration) - Set up the database — create a PostgreSQL database and user
- Run migrations —
medux migrate - Sync plugins —
medux syncplugins - Initialize —
medux initialize - Collect static files —
medux collectstatic - Configure Nginx — set up as a reverse proxy to Daphne
- Set up systemd — create a service unit for Daphne
- TLS — set up SSL/TLS certificates (e.g., via Let's Encrypt)
Production Checklist¶
-
DEBUG=Falsein.env - Strong
SECRET_KEYset -
ALLOWED_HOSTSconfigured -
STATIC_ROOTandMEDIA_ROOTconfigured - PostgreSQL (not SQLite) as database backend
- Redis configured as channel layer backend
- Static files served by Nginx
- TLS configured
- Backup strategy in place (see Backup & Maintenance)
- Admin password changed from default