【问题标题】:Serverless Deploy on WindowsWindows 上的无服务器部署
【发布时间】:2018-12-08 05:00:56
【问题描述】:

在我的开发机器上进行无服务器部署时遇到了麻烦。这是我遇到的错误:

这是我的无服务器 yml 文件配置:

service: serverless-flask

plugins:
  - serverless-python-requirements
  - serverless-wsgi

custom:
  wsgi:
    app: myapp.views:app
    packRequirements: false
  pythonRequirements:
    dockerizePip: true

provider:
  name: aws
  runtime: python3.6
  stage: dev
  region: ap-southeast-1

functions:
  app:
    handler: wsgi.handler
    events:
      - http: ANY /
      - http: 'ANY {proxy+}'

知道我应该使用哪种配置来使用 python 烧瓶应用程序运行无服务器部署命令吗?

谢谢

【问题讨论】:

    标签: python windows amazon-web-services aws-lambda serverless-framework


    【解决方案1】:

    我不确定您是否可以将 pip 用于 AWS 无服务器部署。我有一些无服务器应用程序,我必须将我的依赖项放在根文件夹中。

    你必须跑:

    pip install --install-option="--prefix=$PREFIX_PATH" package_name
    

    因此,当您的根目录中有此内容时,您无需运行 pip。

    此外,您还可以在 AWS Docs 中找到其他步骤: AWS Deployment Lambdas

    显然,这是一个 Lambda 文档,但简而言之,无服务器通过 CloudFormation 设置使用 API 网关端点创建 lambda 函数。

    希望对你有帮助!

    【讨论】:

    • 您绝对可以使用 pip 使用无服务器框架在 AWS 中安装依赖项。我正在开发的应用程序中这样做。
    【解决方案2】:

    我建议一些事情。

    1. 使用 Python 3.7 而不是 3.6。 Lambda 现在支持该环境。
    2. 使用pip install --upgrade setuptools 升级您的点子设置工具
    3. https://visualstudio.microsoft.com/visual-cpp-build-tools/ 安装 C++ 构建工具

    如果这些都不起作用,请启用 SLS_DEBUG=*。在 Powershell 中,您可以使用 $env:SLS_DEBUG="*" 来执行此操作。并再次运行您的部署以查看更具描述性的错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-10
      • 2023-03-12
      • 1970-01-01
      • 2021-08-22
      • 2011-06-12
      • 2016-04-18
      • 2021-01-07
      相关资源
      最近更新 更多