python - 错误:不可满足的约束:libopenjp2-7(缺失):要求:世界 [libopenjp2-7]
问题描述
我正在使用 python:3.7-alpine 基础映像为 Django 项目构建 Dockerfile。
在 requirements.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
这是泊坞窗文件:
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/有一个可搜索的软件包数据库。
推荐阅读
- rust - 存储一个静态闭包指针以供不同线程访问
- angular - 哪种解决方案最适合 mongoDB NoSql 数据库的性能
- c - fC - 如何在函数之外定义 SIMD 变量?
- python - 用烧瓶创建画廊
- ruby-on-rails - 用于操作文本附件的 Active Storage 服务
- python - AWS Glue 连接 Oracle 数据库 - PYSPARK
- javascript - Express 路由中的 async/await
- php - 从第三方网站执行 POST 请求时,在 Laravel 应用程序中将 Same-Site Cookies 设置为 null 的替代方法
- css - 如何在 Gtk3 可选标签中设置光标颜色?
- python - 使用 Python 检查元组列表中的字符串列表是否可用