gajavegs's picture
Add example images
52af76f
# Use a slim Python base
FROM python:3.10-slim
# System deps for Pillow/torchvision image ops
RUN apt-get update && apt-get install -y --no-install-recommends \
libgl1 libglib2.0-0 && \
rm -rf /var/lib/apt/lists/*
WORKDIR /app
# Copy dependency files first (better cache)
COPY requirements.txt /app/requirements.txt
# Install general Python deps
RUN pip install --no-cache-dir -r requirements.txt
# Install CUDA-enabled PyTorch for T4 (CUDA 12.1 wheels)
# Adjust versions if you need to pin; these align well with torch/vision 2.2/0.17+.
RUN pip install --no-cache-dir --index-url https://download.pytorch.org/whl/cu121 \
torch torchvision
# Copy the rest of the app
COPY . /app
# Hugging Face sets $PORT; Gunicorn will bind to it.
ENV PORT=7860
ENV MODEL_PATH=models/alexnext_vsf_bext.pth
ENV CONFUSion_PATH=images/TP.jpg
ENV TP_PATH=images/TP.jpg
ENV TN_PATH=images/TN.jpg
ENV FN_PATH=images/FN.jpg
ENV FP_PATH=images/FP.jpg
ENV FLASK_DEBUG=0
# Single worker (GPU inference), thread worker for simplicity
CMD exec gunicorn -w 1 -k gthread -b 0.0.0.0:$PORT app:app