| FROM python:3.12-slim | |
| ENV PORT=8501 | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| git git-lfs ffmpeg libsm6 libxext6 cmake libgl1 build-essential curl \ | |
| && rm -rf /var/lib/apt/lists/* \ | |
| && git lfs install | |
| WORKDIR /app | |
| ARG TRANSFORMERS_JS_VERSION=3.7.6 | |
| RUN curl -L "https://github.com/huggingface/transformers.js/archive/refs/tags/${TRANSFORMERS_JS_VERSION}.tar.gz" -o transformers.tar.gz \ | |
| && tar -xzf transformers.tar.gz \ | |
| && mv "transformers.js-${TRANSFORMERS_JS_VERSION}" transformers.js \ | |
| && pip install --no-cache-dir -r "transformers.js/scripts/requirements.txt" \ | |
| && rm -rf transformers.tar.gz | |
| COPY requirements.txt ./ | |
| RUN pip install --no-cache-dir -U pip \ | |
| && pip install --no-cache-dir -r requirements.txt | |
| COPY . . | |
| EXPOSE $PORT | |
| CMD ["sh", "-c", "streamlit run app.py --server.port $PORT --server.address 0.0.0.0"] | |