2

我正在尝试部署使用无服务器框架创建的应用程序。但是,由于添加了一些我需要的包,整个事情都中断了。

这是我的要求.txt

dlib==19.21.1
numpy==1.18.0
opencv-python==4.4.0.42
PyJWT==2.0.0
SQLAlchemy==1.3.22

这是我的 serverless.yml

custom:
  pythonRequirements:
    dockerFile: ./Dockerfile
    dockerizePip: true
    slim: true
    useDownloadCache: true
    useStaticCache: true

provider:
  name: aws
  runtime: python3.7
  stage: dev
  region: us-west-2
  timeout: 29
  httpApi:
    cors: true

functions:
  selfieCapture:
    handler: services/widget/transaction/selfie/handler.main
    events:
      - httpApi:
          path: /v1/widget/transaction/selfie
          method: POST

我正在使用 Windows 环境。破坏一切的包是 dlib。在遵循一些教程之后,我能够在本地安装 dlib,但是,每当我运行无服务器部署时,python 包都会留在我的项目文件夹中,并且会弹出此错误:

Error: ENOTDIR: not a directory, scandir 'C:\Users\Manhu\PROJECTS\services-python\_dlib_pybind11.cpython-37m-x86_64-linux-gnu.so'

在尝试使用 docker 之前,我尝试通过添加 pythonBin、删除 Dockerfile 选项和 DockerizePip 来安装我自己的 python,但是没有任何效果。如果我只留下 PyJWT 和 SQLAlchemy 的 requirements.txt,则部署工作(使用本地 python 或 docker)。我还添加了“SLS_DEBUG”环境变量,但没有显示其他或相关信息我该怎么办?

4

0 回答 0