【问题标题】:Installing python package on AWS lambda在 AWS lambda 上安装 python 包
【发布时间】:2017-02-15 11:04:58
【问题描述】:

我已经部署了我的 zipped 项目,但没有 psycopg2 包。我想在我的lambda 上安装这个包而不重新上传我的固定项目(我现在无法访问我的项目)。我怎样才能在我的lambda 上安装这个packagepip可以做到吗?

【问题讨论】:

    标签: python amazon-web-services pip aws-lambda psycopg2


    【解决方案1】:

    pip 是不可能的。您必须将依赖项添加到压缩的 Lambda 部署文件中。如果不上传新的压缩部署文件,您将无法修改 Lambda 部署。

    【讨论】:

    • 并且您将多次重新上传您的代码。所以给自己写一个部署脚本
    【解决方案2】:

    不能直接在 lambda 上使用 pip。相反,我使用自定义构建脚本来创建 zip 包 [这可以给你一个简单的想法 - 它当然可以变得更简单]

    rm -rf ~/devops/tempenv > /dev/null
    virtualenv ~/devops/tempenv
    source ~/devops/tempenv/bin/activate
    pip install SlackClient
    pip install PyYaml
    deactivate
    rm -rf temp > /dev/null
    mkdir temp
    rm aws-lambda.zip > /dev/null
    cp -r ~/devops/tempenv/lib/python2.7/site-packages/* temp/
    cp *.py temp
    cd temp
    zip -r aws-lambda.zip .
    mv aws-lambda.zip ../
    cd ..
    rm -rf temp
    rm -rf ~/devops/tempenv
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多