Deployment overview
Trak is a standard Django app. You can deploy it on:
- A VM (e.g. Ubuntu + systemd + nginx)
- A PaaS (e.g. Render/Heroku/Fly)
- Containers (Docker on ECS, Kubernetes, Cloud Run, etc.)
This repo ships Dockerfiles and a compose.yml, so container-based deployments are the most straightforward starting point.
Google Cloud Run
There are Makefile targets for a basic Cloud Run flow:
make gcp-build
make gcp-push
make gcp-deploy
These targets expect env vars like IMAGE_URL, REGION, DATABASE_ADDRESS, REDIS_NETWORK, and SERVICE_ACCOUNT.
See the Makefile for the full list and adjust to match your GCP setup.
If you are using Cloud Run, review trak/main/settings/prod.py for required environment variables.
See the org-wide standards at Deployment standards.