Django/Python Docker Libreoffice Подпроцесс

Я пытаюсь использовать libreoffice в моем Django приложении, чтобы преобразовать docx файл в pdf с помощью подпроцесса python.

Я включил libreoffice в мой dockerfile:

Dockerfile:

FROM python:3.8-alpine
LABEL maintainer="culturetech.com.au"

ENV PYTHONUNBUFFERED 1

COPY ./requirements.txt /requirements.txt
COPY ./behavioursolutiondjango /behavioursolutiondjango
COPY ./scripts /scripts

WORKDIR /behavioursolutiondjango
EXPOSE 8000

RUN python -m venv /py && \
    /py/bin/pip install --upgrade pip && \
    apk add --update python3-dev \
                          xmlsec xmlsec-dev \
                          gcc \
                          libc-dev \
                          libreoffice \
                          libffi-dev && \
    apk add --update --no-cache postgresql-client && \
    apk add --update --no-cache --virtual .tmp-deps \
        build-base postgresql-dev musl-dev linux-headers && \
    /py/bin/pip install -r /requirements.txt && \
    apk del .tmp-deps && \
    adduser --disabled-password --no-create-home app && \
    mkdir -p /vol/web/static && \
    mkdir -p /vol/web/media && \
    chown -R app:app /vol && \
    chmod -R 755 /vol && \
    chmod -R +x /scripts

ENV PATH="/scripts:/py/bin:$PATH"

USER app

CMD ["run.sh"]

Для выполнения преобразования необходимо выполнить следующее:

subprocess.call(["soffice", "--headless", "--convert-to", "pdf", new_cert.cert.path])

Но я сталкиваюсь со следующей ошибкой:

LibreOffice 7.2 - Fatal Error: The application cannot be started. 
User installation could not be completed. 

Я потратил часы на это и не могу понять, что я упустил.

Я был бы более чем счастлив использовать что-то другое, кроме Libreoffice, но не могу найти что-то, что будет работать, кроме libreoffice.

Вернуться на верх