湖南建设长沙网站建设价格,建筑做文本网站,短网址生成源码,沈阳网站页面设计公司文章目录 场景解决方案AptfileBuildpacksDashboard 上手动构建Heroku CLI 终端构建 Requirements.txt提交改变 场景 我使用 heroku 部署了一个 Django 后端项目#xff0c;里面使用了 pdf2docx 库进行 pdf 转 docx 这个库底层调用了 opencv 的一些操作#xff0c;因此在部署… 文章目录 场景解决方案AptfileBuildpacksDashboard 上手动构建Heroku CLI 终端构建 Requirements.txt提交改变 场景 我使用 heroku 部署了一个 Django 后端项目里面使用了 pdf2docx 库进行 pdf 转 docx 这个库底层调用了 opencv 的一些操作因此在部署的时候出了这个问题 ImportError: libGL.so.1: cannot open shared object file: No such file or directory表示你的应用试图加载一个动态链接库shared librarylibGL.so.1但是在运行环境中没有找到。libGL.so.1 是 OpenGL 库通常由显卡驱动提供。 这个问题发生在试图导入 cv2OpenCV模块时。OpenCV 依赖于某些动态链接库包括 libGL.so.1。
解决方案
Aptfile
Heroku 默认的运行环境可能没有包含所有 OpenCV 需要的库。你需要自定义你的 Heroku 构建包来包含这些缺失的库。这可以通过创建一个 Aptfile 来实现Aptfile 列出了你的应用所需的所有 Debian 包。 在你的项目根目录创建一个名为 Aptfile 的文件。在这个文件中添加以下行 libgl1-mesa-glxlibsm6
libxext6
libxrender-dev
libglib2.0-0Buildpacks 首先在 Heroku 设置中添加下面两个 buildpacks heroku/pythonhttps://github.com/heroku/heroku-buildpack-apt 构建 buildpacks 的方式有两种
Dashboard 上手动构建 登录到你的 Heroku 账户并打开你的应用。 在你的应用页面点击 “Settings” 标签。 滚动到 “Buildpacks” 部分然后点击 “Add buildpack”。 在弹出的对话框中输入 buildpack URL 或者类型 heroku/pythonhttps://github.com/heroku/heroku-buildpack-apt 然后点击 “Save changes”。
Heroku CLI 终端构建 安装 Heroku CLI如果尚未安装。 命令行登录 heroku login添加 buildpack 到你的应用 heroku buildpacks:add --index 1 heroku/python --app YOUR_APP_NAME
heroku buildpacks:add --index 2 https://github.com/heroku/heroku-buildpack-apt --app YOUR_APP_NAME这里的 YOUR_APP_NAME 是你在 Heroku 上通过 new app 按键创建的 application 的名称
Requirements.txt
在 requirements.txt 中加入 opencv package 的安装代码opencv-python-headless提交改变