Skip to content

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 .env file in the repository root
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

docker compose up -d --build

This starts:

  • app: Django development server on port 8001
  • db: PostgreSQL
  • redis: Redis
  • celery: background worker

Run Migrations

docker compose run --rm app python manage.py migrate

Verify Setup

docker compose run --rm app python manage.py check

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.