问题标签 [zappa]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Zappa 不打包嵌套的源目录
我有一个我正在尝试使用 zappa 部署的 python 应用程序。我的目录的根级别有应用程序和一个名为helper的目录。结构如下所示:
在 helper 目录中有一个api.py文件,它在我的app.py中引用,如下所示
当我使用它运行命令进行打包和部署时,zappa deploy dev
它不会捆绑部署中的帮助程序目录,只会捆绑根级别的应用程序目录。打包和部署时如何告诉 zappa 包含所有子目录?
flask - AWS API Gateway 未调用自定义授权方
我的 Flask 应用程序使用 Facebook OAuth 2 进行授权,并使用 Zappa 部署在 API Gateway 和 Lambda 上。该应用程序需要请求授权者令牌,我认为我需要为此使用自定义授权者,因为普通 lambda 无法发出外部请求。我已经设置了资源并将其链接到自定义授权方和我的授权方 lambda,但是我收到一个错误,并且似乎没有调用 lambda 授权方。我究竟做错了什么?
谢谢
https://s3-eu-west-1.amazonaws.com/aws-api-gateway-support/endpoint+error.png
https://s3-eu-west-1.amazonaws.com/aws-api-gateway-support/no+events+in+lambda+monitoring.png
https://s3-eu-west-1.amazonaws.com/aws-api-gateway-support/custom+autorizer.png
https://s3-eu-west-1.amazonaws.com/aws-api-gateway-support/api+gateway+resource+setup.png
flask - 使用 Zappa 作为 conda 用户
我正在尝试创建一个 API 并希望使用 Flask/AWS Lambda 来做到这一点。据我所知,Zappa看起来是最好的(唯一?)部署选项。
问题是我使用 conda 来管理我的环境,而 Zappa 目前没有可以在 conda 中工作的版本。它需要 virtualenv。
我的问题是:
- 其他 conda 用户如何部署 Flask/AWS Lambda 应用程序?
- 我可以在同一台机器上同时运行virtualenv和 conda 吗?有哪些风险/挑战?
docker - 在本地运行 Docker lambda 映像
这是 Dockerfile:
但是,当我跑步时,docker-compose up
我得到:
我认为这是因为我需要激活 virtualenv。我希望能够在我的本地机器上运行该项目以进行开发。我错过了什么?谢谢!
django - 使用 zappa 部署,子文件夹中的 Django 项目
我是 Docker、AWS Lambda 和 Zappa 的新手,但我正在尝试配置一个项目,但收效甚微。
我连接到 Docker ( docker-compose run web bash
),激活环境,配置 AWS 凭证并运行zappa init
和zappa deploy
. 但是,部署后出现错误(正在执行zappa tail
):
我相信那是因为我的目录结构不是标准的:
因此,我的 django 项目位于该project
文件夹内,因为我不喜欢将所有文件都扔在那里并与其他配置文件混合。
我的 zappa 配置文件如下所示:
和 Dockerfile:
你能告诉我如何正确设置它吗?谢谢!
更新:
移动到子文件夹后的最新错误:
lambda - zappa python 3.6 Flask lambda
这是我得到的错误:“{'message': '处理此请求时发生未捕获的异常。您可以使用zappa tail
命令调查此问题。', 'traceback': ['Traceback (last recent call last):\n' , ' File \"/var/task/handler.py\", 第 454 行,在处理程序中\n response = Response.from_app(self.wsgi_app, environ)\n', ' File \"/var/task/werkzeug/ wrappers.py\",第 903 行,在 from_app\n return cls(*_run_wsgi_app(app, environ, buffered))\n','文件\"/var/task/werkzeug/test.py\",第884行,在 run_wsgi_app\n app_rv = app(environ, start_response)\n', \"TypeError: 'NoneType' object is not callable\n\"]}"
我没有主块,因为 lambda 没有进入它。
我在 init.py 中有代码,我的类在另一个文件中。
有人可以帮忙吗?我一无所知,因为这是我第一次尝试 lambda 和 zappa。
这是我的 init.py:
仅供参考 - 上面的代码在本地机器(Vagrant、venv、Python 3.6、Flask)上运行良好。
感谢你的帮助
python - zappa 自定义授权器,用于带 cors 的烧瓶
我正在将 flask-cors 用于 aws python aws lambda API。我用 zappa 部署它,它按预期工作。然而,cors 不适用于受https://github.com/awslabs/aws-apigateway-lambda-authorizer-blueprints/blob/master/blueprints/python/api-gateway-authorizer-python.py启发的自定义授权器
我用 try/except 更改了授权代码,并在异常时为 OPTION 方法生成策略,但 Option 方法仍然返回 401。
如果它使事情变得容易,我不介意解决方法。
谢谢
我尝试了一种建议的解决方案:即在 API Gateway 中为 401 响应设置标头,遗憾的是浏览器预检期望成功的状态码。
更新。我重新开始实施我的授权人,也考虑过使用 aws auth 服务。
python - 如何在 aws lambda 中运行可执行文件?
我正在尝试使用 Zappa 部署 python 文件。python 文件又调用与 python 文件位于同一目录中的可执行文件。当我使用 ngrok 在本地运行它时它工作正常,但在使用 Zappa 部署时它会失败。我知道我们可以将此解决方法用于使用节点 js 的 aws lambda 中的可执行文件。我怎样才能使用python做到这一点?