Installation¶
Docker-first setup
OpenSESA is intended to be run through Docker Compose for local development and operational consistency.
Prerequisites¶
- Docker and Docker Compose
- Git
- A populated
.envfile in the repository root
Recommended Tool Versions¶
| Tool | Recommended | Notes |
|---|---|---|
| Docker Engine | Recent stable | Must support Compose v2 |
| Docker Compose | v2+ | docker compose command form |
| Git | Recent stable | Required for branch workflow |
Collapsed environment checklist
Before startup, verify .env includes database credentials, DJANGO_SECRET_KEY, host values, and any deployment-specific overrides needed for your environment.
Installation Flow¶
flowchart TD
A[Clone Repository] --> B[Prepare .env]
B --> C[docker compose up -d --build]
C --> D[Run Migrations]
D --> E[Run Django Check]
E --> F[Open Application] Start Local Stack¶
This starts:
- app: Django development server on port 8001
- db: PostgreSQL
- redis: Redis
- celery: background worker
Run Migrations¶
Verify Setup¶
If successful, Django reports no system check issues.
Post-Install Validation¶
| Check | Command | Expected Result |
|---|---|---|
| Service health | docker compose ps | app, db, redis, celery running |
| Django checks | docker compose run --rm app python manage.py check | No system check issues |
| Test discovery | docker compose run --rm app sh -c "DJANGO_SETTINGS_MODULE=app.settings_test PYTHONPATH=. pytest --collect-only -q" | Test list and collection summary |
See the Troubleshooting Matrix for common setup failures.
Troubleshooting (collapsed)
- Confirm Docker engine is running.
- Rebuild containers after dependency changes.
- Verify database credentials in
.env. - Check service health and logs with
docker compose logs -f.