# Bản chạy online. Dựng: docker build -t pdftools .   Chạy: docker run -d --env-file .env -p 8080:8080 -v pdftools-data:/data pdftools
FROM python:3.12-slim

# LibreOffice để chuyển Word/Excel/PowerPoint sang PDF; phông chữ để file Office hiển thị đúng tiếng Việt
RUN apt-get update && apt-get install -y --no-install-recommends         libreoffice-writer libreoffice-calc libreoffice-impress fonts-noto-core fonts-liberation     && rm -rf /var/lib/apt/lists/*

WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY app.py tools.py online.py LICENSE THIRD-PARTY-NOTICES.md Dockerfile ./
COPY static static
COPY tessdata tessdata

# Chạy bằng người dùng thường; đơn hàng và nhật ký nằm ở /data (gắn volume để không mất khi cập nhật)
RUN useradd --create-home app && mkdir /data && chown app /data
USER app
ENV PDFTOOLS_ONLINE=1 PDFTOOLS_DATA=/data PORT=8080
VOLUME /data
EXPOSE 8080
CMD ["python", "app.py"]
