2

サーバーレス フレームワークで作成されたアプリをデプロイしようとしています。ただし、必要なパッケージをいくつか追加したため、すべてが壊れています。

これは私のrequirements.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 インストールを試してみましたが、何も機能しません。requirements.txt を PyJWT と SQLAlchemy だけにしておけば、デプロイは機能します (ローカル python または docker を使用)。「SLS_DEBUG」環境変数も追加しましたが、追加情報や関連情報が表示されません。

4

0 に答える 0