我正在为依赖 dlib 的 AWS Lambda 构建 Python 部署包。dlib 具有操作系统依赖关系,它依赖于 cmake 来构建二进制文件。鉴于我有一台 Mac 并且正在那个环境中进行开发,我想知道如何做到这一点。我知道 Docker,但我不确定如何设置映像来编译 AWS 的二进制文件。对此的任何帮助将不胜感激。
问问题
419 次
1 回答
0
最简单的方法是使用插件
无服务器包 python 函数
所以只需在 serverless.yml 中定义
package:
individually: true
custom:
pkgPyFuncs:
buildDir: _build
requirementsFile: requirements.txt
cleanup: true
useDocker: true
重要的是使用 useDocker: true - 这是基于 AWS AMI (本地)启动一个 docker - 因此您可以获得正确的依赖项。
之后在 serverless.yml 中创建你的函数:
functions:
test:
name: ${opt:stage, self:provider.stage}-${self:service}-test
handler: lambda_function.lambda_handler
package:
include:
- ./test
artifact: ${self:custom.pkgPyFuncs.buildDir}/${self:functions.test.name}.zip
在您的测试文件夹中放置requirements.txt
. 此文件将用于使用正确的包部署服务。
如果您还有其他问题,请告诉我
于 2017-12-22T09:29:58.727 回答