osh-agentic-rag / Dockerfile
Rofati's picture
Dockerfile: use pypdf for build (lightweight, no OOM)
c6e5c0c verified
Raw
History Blame Contribute Delete
892 Bytes
FROM python:3.11-slim
WORKDIR /app
# System deps (minimal — no OpenCV needed without Docling)
RUN apt-get update && apt-get install -y libgl1 libglib2.0-0 && rm -rf /var/lib/apt/lists/*
# Pre-built llama-cpp-python 0.3.21
RUN pip install --no-cache-dir \
"https://github.com/abetlen/llama-cpp-python/releases/download/v0.3.21/llama_cpp_python-0.3.21-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# Copy everything including PDFs
COPY . .
# PRE-BUILD the FAISS index (pypdf is lightweight — no OOM)
RUN mkdir -p /app/cache && python build_index.py
# Setup user
RUN useradd -m -u 1000 user && chown -R user:user /app
USER user
ENV PATH="/home/user/.local/bin:$PATH"
ENV HF_HOME="/app/cache"
ENV GRADIO_SERVER_NAME="0.0.0.0"
ENV GRADIO_SERVER_PORT="7860"
EXPOSE 7860
CMD ["python", "app.py"]