amazon-web-services - 在 AWS lambda 中运行两个 docker 容器
问题描述
我知道您可以将 docker 容器上传到 AWS lambda 函数。有没有办法将两个 docker 容器映射到同一个 lambda 函数?这样一个接一个地执行。这将允许通过临时磁盘进行一些本地通信。
解决方案
不幸的是,一个 Lambda 函数可能只绑定到一个 Docker 映像。
有几种方法可以实现这个所需的功能:
如果您不需要两个单独的 lambda 函数,您可以将项目分成不同的文件,同时仍然将所有内容都包装在一个容器中。它可能看起来像这样:
project_name
|
--- Dockerfile
|
--- src
|
--- lambda_function.py
|
--- file1.py
|
--- file2.py
wherelambda_function.py
包含您的处理程序,该处理程序从file1.py
和调用方法file2.py
。
如果您确实需要两个不同的 Lambda,您有几个选择。首先,我建议在 lambda 1 和 lambda 2 之间设置一个 API 网关。这样,lambda 1 可以针对 API 发出 curl 请求,它将代表您调用第二个 lambda。
另一种选择是 Step Functions。它提供了一个很好的 UI 来设置您的 Lambda 将如何相互交互。Step Functions 的缺点是,当您向组合中添加更多 lambda 时,它很快就会变得难以管理。
推荐阅读
- python - 使用模板在 Flask 中没有数据刷新
- javascript - 循环遍历 2 数组并使用 onclick 获取项目
- c# - 2个字符串中的行进字符序列
- unity3d - 此应用程序不兼容 - 关于在 unity 上安装 apk 构建
- mysql - Loopback4 MySQL 自动增量 ID
- git - Azure CLI:我不处理协议
- git - 带有 Google Drive、Dropbox 等的 Git LFS?
- google-cloud-pubsub - 如何使用拉取请求触发 Google Cloud Build 构建步骤?
- permissions - 卸载 Vagrant Mac
- php - php min max 函数无法正常工作