|
|
|
FROM python:3.10-slim |
|
|
|
|
|
|
|
RUN apt-get update && apt-get install -y \ |
|
poppler-utils \ |
|
curl \ |
|
&& rm -rf /var/lib/apt/lists/* \ |
|
&& curl -LsSf https://astral.sh/uv/install.sh | sh \ |
|
&& echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc \ |
|
&& . ~/.bashrc |
|
|
|
|
|
|
|
COPY pyproject.toml . |
|
|
|
|
|
RUN . ~/.bashrc && uv pip install -r pyproject.toml --system && uv pip install llama-index-readers-file --system |
|
|
|
|
|
RUN useradd -m -u 1000 user |
|
|
|
|
|
USER user |
|
|
|
|
|
ENV HOME=/home/user \ |
|
PATH=/home/user/.local/bin:$PATH |
|
|
|
|
|
|
|
WORKDIR $HOME/app |
|
|
|
COPY --chown=user . $HOME/app |
|
|
|
RUN mkdir -p uploads embeddings |
|
|
|
|
|
EXPOSE 7860 |
|
|
|
|
|
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"] |