如何在Serverless v1.0

时间:2016-09-29 15:30:41

标签: python serverless-framework

语言:Python 框架:Serverless v1.0

通常我会在项目根

中运行pip freeze > requirements.txt

如何将这些依赖项打包到每个部署中?

2 个答案:

答案 0 :(得分:12)

  1. 创建requirements.txt

    pip freeze> requirements.txt

  2. 创建一个包含所有依赖项的文件夹:

    pip install -t vendored -r requirements.txt

  3. 请注意,为了在代码中使用这些依赖项,您需要添加以下内容:

    import os
    import sys
    here = os.path.dirname(os.path.realpath(__file__))
    sys.path.append(os.path.join(here, "./vendored")) 
    

    有关其他示例,请参阅https://stackoverflow.com/a/36944792/1111215

    更新:您现在可以使用serverless-python-requirements插件代替子弹(2)和上面的代码:

    安装插件

    npm install --save serverless-python-requirements
    

    并将插件添加到serverless.yml

    plugins:
      - serverless-python-requirements
    

    不要忘记确保您拥有requirements.txt个文件。

    就是这样,一旦sls deploy被调用,插件将使用代码打包依赖项。

    如需完整样本,请查看serverless-python-sample

答案 1 :(得分:0)

我有类似的问题,采取这些步骤来部署依赖项。 https://stackoverflow.com/a/41634501/2571060