FROM python:3.12-slim

ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1

WORKDIR /app

RUN apt-get update \
    && apt-get install -y --no-install-recommends libpq5 \
    && rm -rf /var/lib/apt/lists/*

COPY pyproject.toml /app/pyproject.toml
COPY __init__.py /app/__init__.py
COPY alembic /app/alembic
COPY database_cli.py /app/database_cli.py
COPY pipelines /app/pipelines
COPY docker /app/docker

RUN pip install --no-cache-dir .

RUN chmod +x /app/docker/web-entrypoint.sh

EXPOSE 8000

CMD ["/app/docker/web-entrypoint.sh"]
