services: db: image: postgres:16 environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres POSTGRES_DB: hackathon_db ports: - "5433:5432" volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 3s timeout: 3s retries: 10 backend: build: . ports: - "8001:8000" environment: DATABASE_URL: postgresql://postgres:postgres@db:5432/hackathon_db SECRET_KEY: super-secret-key-change-in-production ALGORITHM: HS256 ACCESS_TOKEN_EXPIRE_MINUTES: 30 depends_on: db: condition: service_healthy command: > sh -c "uv run alembic upgrade head && uv run uvicorn app.main:app --host 0.0.0.0 --port 8000" volumes: pgdata: