Overview
Better-PaaS can deploy Django projects from a Git repository or Docker image. The platform builds the app, runs it in a container, routes traffic through Caddy, and gives you logs, env vars, domains, databases, and rollbacks from the dashboard.
What Better-PaaS expects
Django projects should have a clear build and start path. For this stack, the common shape is Python web apps with migrations, static assets, and databases. If Nixpacks does not detect the project correctly, use explicit build/start commands or a Dockerfile.
Deployment steps
Connect the repository, choose the branch, set environment variables, attach any database, deploy, then verify the app responds on the platform-provided port. Better-PaaS will handle container lifecycle and HTTPS routing after the app is healthy.
- Connect Git repository
- Set build and runtime variables
- Add Postgres, Redis, or MySQL if needed
- Deploy and inspect logs
- Add domain and verify HTTPS
Common mistakes
The most common issue is hard-coding a port instead of listening on the provided PORT variable. Build failures usually come from missing lockfiles, missing scripts, or framework detection that needs a custom Dockerfile.
Django collectstatic and migrations
Run python manage.py migrate after first deploy. Static files may need whitenoise or an external CDN depending on your settings module.
- Set DJANGO_SETTINGS_MODULE and SECRET_KEY
- Attach Postgres for production
- Configure ALLOWED_HOSTS with your domain
FAQ
Can Better-PaaS deploy Django from Git?
Yes, when the repository can be built by Nixpacks or by a Dockerfile you provide.
Can Django apps use databases?
Yes. Better-PaaS can provision Postgres, Redis, and MySQL containers and inject connection variables into apps.