AWS EB OpenCV-Python "web: from .cv2 import"



在aws-eb中,我部署了一个应用程序-django,并且在该过程中没有错误。运行状况为绿色且正常,但页面显示内部服务器错误。所以我查看了日志,发现了以下错误。

... web: from .cv2 import  
... web: ImportError: libGL.so.1: cannot open shared object file: No such file or directory

在部署进程上安装requirements.txt时,必须安装opencv。因为它包括opencv-python==4.5.5.64所以我不太确定上面的错误指向什么。

和帮助者.py这就是我导入它的方式。

import requests
import cv2

libGL.so与程序包libgl1一起安装,这里的pip3 install opencv-python是不够的。

通过ssh连接aws并运行;

apt-get update && apt-get install libgl1 

或者更好的是,考虑为项目使用docker容器,并将安装命令添加到Dockerfile中。

此外,作为https://stackoverflow.com/a/66473309/12416058建议,包python3-opencv包含opencv的所有系统依赖项所以安装它可以防止进一步的错误。

安装python3-opencv;

apt-get update && apt-get install -y python3-opencv
pip install -r requirements.txt

在Dockerfile:中安装

RUN apt-get update && apt-get install -y python3-opencv
RUN pip install -r requirements.txt

最新更新