# Pipeline container. Build from the repo root: docker build -f _pipeline/Dockerfile -t old-books-pipeline . # Run: docker run --rm -v /path/to/old-books/books:/repo/books old-books-pipeline run "/repo/books/x.pdf" --chapters 1 # Not built yet. Voice and speech-to-text are separate off-the-shelf containers reached through the URLs in settings.yaml. FROM python:3.13-slim RUN apt-get update \ && apt-get install -y --no-install-recommends ffmpeg poppler-utils tesseract-ocr tesseract-ocr-eng ghostscript \ && rm -rf /var/lib/apt/lists/* COPY _pipeline/requirements.txt /tmp/requirements.txt RUN pip install --no-cache-dir -r /tmp/requirements.txt && rm /tmp/requirements.txt COPY _pipeline /repo/_pipeline WORKDIR /repo ENTRYPOINT ["python3", "/repo/_pipeline/cli.py"]