AWS Lambda 准备有平台相关性的 Python 依赖项程序包
native code
使用 docker 在 Amazon lambda runtime 环境
mkdir lambda_headless_chrome_python
cd lambda_headless_chrome_python
- 创建下面的 Dockerfile。
Dockerfile
FROM lambci/lambda:build-python3.6
ENV AWS_DEFAULT_REGION ap-northeast-1
ENV APP_DIR /var/task
ADD . .
CMD pip install -r requirements.txt -t $APP_DIR && \
zip -9 deploy_package.zip lambda_function.py && \
zip -r9 deploy_package.zip *
- 创建 docker 镜像并打包。
docker build -t lambda_headless_chrome .
docker run -v "${PWD}":/var/task lambda_headless_chrome
- 现在您有一个 zip 文件deploy_package.zip 可以上传到 lambda。
使用 SAM
准备
如果使用了 AWS Chalice 部署项目,且依赖包的体积不大,可以直接使用 Chalice 部署。会自动准备适配 Lambda 环境的依赖包,作为项目代码的一部分,整体压缩打包更新到 Lambda。