amazon-web-services - 无服务器 - 本地路径和 Lambda 路径
问题描述
我想知道如何强制我的本地无服务器部署模仿我将其部署到 AWS 时发生的情况。
这是我的无服务器 yaml 文件:
service: payment # NOTE: update this with your service name
# You can pin your service to only deploy with a specific Serverless version
# Check out our docs for more details
# frameworkVersion: "=X.X.X"
environment:
SLS_DEBUG: "*"
provider:
name: aws
runtime: nodejs8.10
stage: production
region: ca-central-1
timeout: 60
role: ${file(../config/prod.env.json):ROLE}
vpc:
securityGroupIds:
- ${file(../config/prod.env.json):SECURITY_GROUP}
subnetIds:
- ${file(../config/prod.env.json):SUBNET}
apiGateway:
apiKeySourceType: HEADER
apiKeys:
- ${file(../config/prod.env.json):APIKEY}
package:
include:
- ../lib/**
functions:
- '${file(src/handlers/payment.serverless.yml)}'
plugins:
- serverless-offline
我的文件结构如下所示:
root
--- node_modules
--- lib
- models
--- payment
- serverless.yml
当我将它部署到 AWS 时,lib 文件夹会被放入 lambda 函数的文件夹中,但在本地我需要定义它的路径,通常是 ../.../../
我怎样才能使它在本地或部署时不必更改路径?
解决方案
有一个非常接近 aws lambda 的 docker 容器。您可以将无服务器部署到容器上,并根据您的需要进行反复试验。您还可以通过这种方式创建无服务器支持的 lambda 层。
推荐阅读
- html - td 内的图像是 td 的高度
- ssl - 带有 SSL 的 Kafka - 写入主题 - 授权错误
- ios - 从 JSON 响应中解析两个不同对象的数组
- excel - 提取多个表达式
- python - Flask SERVER_NAME 设置最佳实践
- postgresql - Artemis ActiveMQ 无法连接到 Postgres
- python - 使用 tweepy 从 Twitter 获取用户 ID 时出错?
- java - NoClassDefFoundError javax/servlet/Registration$Dynamic with spring boot + spring boot legacy
- python - “msvcrt.getch”之后的“打印”不起作用
- jdbc - 在进一步处理之前等待 jdbc 出站通道适配器完成