我有一个pip软件包的需求文件。 我将其安装在目标文件夹中,然后将内容压缩并上传到AWS Lambda层。
requirements.txt
asgiref==3.2.3
certifi==2019.11.28
chardet==3.0.4
cloudevents==0.2.4
decorator==4.4.1
Django==3.0
idna==2.8
jaeger-client==4.2.0
jsonpath-ng==1.4.3
pbr==5.4.4
ply==3.11
pytz==2019.3
requests==2.22.0
six==1.13.0
sqlparse==0.3.0
urllib3==1.25.7
aws-xray-sdk
mysql-connector-python
gunicorn
我使用命令
pip3 install -r requirements.txt -t python/
,其中python是目标目录。以下图片显示了python目录的内容。
![enter image description here](https://istack.dev59.com/FHVc3.webp)
import json
import django
def lambda_handler(event, context):
# TODO implement
return {
'statusCode': 200,
'body': json.dumps('Hello from Lambda!')
}
日志文件错误:
Response:
{
"errorMessage": "Unable to import module 'lambda_function'"
}
Request ID:
"66ce85e0-59f0-4e5c-98f9-6fa3e3eb17d0"
Function Logs:
START RequestId: 66ce85e0-59f0-4e5c-98f9-6fa3e3eb17d0 Version: $LATEST
Unable to import module 'lambda_function': No module named 'django'
END RequestId: 66ce85e0-59f0-4e5c-98f9-6fa3e3eb17d0
REPORT RequestId: 66ce85e0-59f0-4e5c-98f9-6fa3e3eb17d0 Duration: 0.64 ms Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 42 MB Init Duration: 1.81 ms
python -m pip install requirement.txt
,然后再试一下,也许你有一个 venv 或类似的东西搞砸了事情。 - Reznikpip
命令,以及运行后项目目录的列表。 - Parsifal