FROM python:3.12-alpine AS base WORKDIR /backend COPY pyproject.toml requirements.lock README.md /backend/ RUN pip install uv --no-cache RUN uv pip install --no-cache --system -r requirements.lock COPY . . CMD ["granian", "--interface", "asgi", "src/app.py", "--host", "0.0.0.0"]