После проверки в журналах я обнаружил следующую ошибку:
Код: Выделить всё
[ERROR] Runtime.ImportModuleError: Unable to import module 'handler': No module named 'fastapi'
Traceback (most recent call last):
INIT_REPORT Init Duration: 99.52 ms Phase: init Status: error Error Type: Runtime.ImportModuleError
Код: Выделить всё
from fastapi import FastAPI
from mangum import Mangum
app = FastAPI()
@app.get("/")
def read_root():
return {"message": "Hello, this is Daksh from FastAPI on AWS Lambda!"}
handler = Mangum(app)
Код: Выделить всё
org: daksh
service: fastapi-lambda
provider:
name: aws
runtime: python3.10
region: ap-northeast-1
deploymentBucket:
name: fastapi-lambda-deployments-347775769886
functions:
app:
handler: handler.handler
events:
- http:
path: /{proxy+}
method: any
memorySize: 128
timeout: 10
environment:
PYTHONPATH: "/var/runtime:/var/task"
package:
exclude:
- node_modules/**
- env/**
- .serverless/**
plugins:
- serverless-python-requirements
custom:
pythonRequirements:
dockerizePip: non-linux
layer:
path: requirements.txt
name: fastapi-serverless-lambda
compatibility: python3.10
Код: Выделить всё
fastapi==0.115.6
mangum==0.19.0
# other packages
- Я могу без проблем запускать функцию Lambda локально с помощью Serverless Framework.
-Функция успешно развернута, но в журналах я вижу ошибку Runtime.ImportModuleError, указывающую, что fastapi не найден. - Я использую плагин serverless-python-requirements для обработки зависимостей.
Что может быть причиной этой ошибки и как ее устранить, чтобы FastAPI работал с AWS Lambda?
Подробнее здесь: https://stackoverflow.com/questions/793 ... s-framewor
Мобильная версия