我正在使用python:3.7-alpine基本映像来为Django项目构建Dockerfile。
在require.text文件中,我有WeasyPrint == 47
我为WeasyPrint需要libopenjp2-7软件包,因为在运行Django应用时出现此错误。
ImportError: Error loading shared library libopenjp2.so.7: No such file or directory (needed by /code/env/lib/python3.7/site-packages/PIL/_imaging.cpython-37m-x86_64-linux-gnu.so)
Starting server
这是dockerfile:
FROM python:3.7-alpine
RUN apk add --no-cache postgresql-dev gettext libxml2-dev libxslt-dev \
freetype-dev libpng-dev jpeg-dev \
zlib-dev musl-dev git
RUN pip install --upgrade pip virtualenv==16.7.9
RUN apk add --update gcc \
openjpeg \
libopenjp2-7 \
libffi-dev \
cairo-dev \
pango-dev \
gdk-pixbuf-dev
但是当我构建它时,出现此错误:
ERROR: unsatisfiable constraints:
libopenjp2-7 (missing):
required by: world[libopenjp2-7]
有人知道这是什么问题吗?
您可能正在寻找openjpeg软件包。
[请记住,不同的Linux发行版具有不同的程序包名称,它们不一定遵循一种模式,您可以从共享库文件的名称中猜出程序包名称。对于Alpine,https://pkgs.alpinelinux.org/有一个可搜索的软件包数据库。