Local Setup¶
Purpose¶
Set up a stable local runtime aligned with project assumptions.
When To Use This Page¶
- preparing a long-lived development environment
- debugging local environment drift
- standardizing setup across team members
Prerequisites¶
| Requirement | Minimum | Why It Matters |
|---|---|---|
| Docker engine + compose | recent stable | runs all project services |
| Repository checkout | current branch | aligns scripts/routes/models |
.env from .env.example | required | injects app/db/security config |
Local Runtime Topology¶
flowchart TB
Dev["Developer"] --> App["app (Django)"]
App --> DB["db (PostgreSQL)"]
App --> Redis["redis"]
Redis --> Celery["celery worker"] Setup Commands¶
Useful Working Commands¶
docker compose run --rm app python manage.py shell
docker compose run --rm app python manage.py <command>
docker compose run --rm celery celery -A app inspect registered
docker compose run --rm celery celery -A app inspect ping
Local Environment Discipline¶
- keep
.envlocal and out of version control - use separate env values for local/test/prod
- keep host/CSRF/security settings explicit