我想使用 doc2pdf
我的程序 python:3.9-slim-bullseye
容器
我添加了 libreoffice-writer unoconv
到我的容器
Dockerfile
FROM python:3.9-slim-bullseye
WORKDIR /project
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONBUFFERED=1
COPY . .
RUN apt-get update && apt-get install --no-install-recommends -y \
libreoffice-writer unoconv \
gcc libc-dev libpq-dev python-dev libxml2-dev libxslt1-dev python3-lxml && apt-get install -y cron &&\
pip install --no-cache-dir -r requirements.txt
然后我登录我的容器并收到以下错误
docker-exec -ti <Container_NAME> bash
root@cfdbb27947c6:/project/documents_app/templates# doc2pdf doc_1.docx
unoconv: Cannot find a suitable pyuno library and python binary combination in /usr/lib/libreoffice
ERROR: No module named 'uno'
unoconv: Cannot find a suitable office installation on your system.
ERROR: Please locate your office installation and send your feedback to:
http://github.com/dagwieers/unoconv/issues
root@cfdbb27947c6:/project/documents_app/templates#
如何修复错误?
更新 1
正在尝试安装 python3-uno
但这并没有帮助
还加了这个
uno==0.3.3
base==1.0.4
unotools
还是有错误
最佳答案
试试这个:
sed -i 's|#!/usr/bin/env python3|#!/usr/bin/python3|' /usr/bin/unoconv
在以下链接下找到此解决方案:https://github.com/unoconv/unoconv/issues/49
关于python - 如何将 doc2pdf 添加到自定义 docker 容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72746661/