FROM python:3.11-slim WORKDIR /app COPY pyproject.toml ./ COPY . . RUN pip install --no-cache-dir --upgrade pip \ && pip install --no-cache-dir . EXPOSE 8000 # Two processes, per the two axes: # - main.py : the spec-first FastAPI application # - worker.py : the pipeline consumer polling pending jobs CMD ["sh", "-c", "uvicorn main:app --host 0.0.0.0 --port 8000 & exec python worker.py"]