FROM pytorch/pytorch:2.0.1-cuda11.7-cudnn8-runtime AS builder

RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential python3-venv && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

RUN python3 -m venv /opt/myenv
ENV PATH="/opt/myenv/bin:$PATH"

WORKDIR /app
COPY . /app

RUN pip install --no-cache-dir Flask matplotlib scikit-learn transformers pandas sentence_transformers
RUN pip install --no-cache-dir --upgrade setuptools wheel


FROM python:3.10-slim

COPY --from=builder /opt/myenv /opt/myenv
COPY --from=builder /app /app

ENV PATH="/opt/myenv/bin:$PATH"

RUN chown -R www-data:www-data /app && chmod -R 755 /app

EXPOSE 5000

CMD ["/opt/myenv/bin/python", "/app/api.py"]
