31 lines
831 B
Docker
31 lines
831 B
Docker
FROM python:3.11-slim
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
poppler-utils \
|
|
libgl1-mesa-glx \
|
|
libglib2.0-0 \
|
|
libsm6 libxext6 libxrender-dev libgomp1 \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
WORKDIR /app
|
|
|
|
# Install PyTorch CPU + pdf2zh
|
|
RUN pip install --no-cache-dir torch --index-url https://download.pytorch.org/whl/cpu
|
|
RUN pip install --no-cache-dir pdf2zh
|
|
|
|
COPY requirements.txt .
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
|
|
COPY . .
|
|
|
|
# Pre-download the layout model
|
|
RUN python3 -c "from pdf2zh.doclayout import OnnxModel; OnnxModel.from_pretrained()"
|
|
|
|
VOLUME ["/app/papers", "/app/data"]
|
|
EXPOSE 8000
|
|
ENV PORT=8000
|
|
ENV LOG_LEVEL=info
|
|
ENV DEEPSEEK_MODEL=deepseek-chat
|
|
|
|
CMD ["sh", "-c", "python3 -m uvicorn api.server:app --host 0.0.0.0 --port ${PORT} --log-level ${LOG_LEVEL}"]
|