You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Serverless Framework部署VPC内Lambda时遇类型错误求助

问题原因

错误核心是你把VPC配置错误嵌套在了environment字段下。Lambda的environment.Variables仅支持字符串类型的键值对,但你传入了一个JSON对象(vpc下的securityGroupIds和subnetIds),导致AWS CloudFormation的属性验证失败。

修复后的配置

将VPC配置从environment中移出,直接作为functions.bot的一级配置项,与handler、environment同级:

useDotenv: true

provider:
  name: aws
  runtime: nodejs18.x
  stage: prod

functions:
  bot:
    handler: src/index.run
    # VPC配置独立放在这里
    vpc:
      securityGroupIds:
        - ${env:SECURITY_GROUP_ID}
      subnetIds:
        - ${env:SUBNET_ID}
    environment:
      # 这里仅存放需要传递给Lambda的字符串类型环境变量
      # 示例:API_KEY: ${env:API_KEY}
    events:
      # Invoke Lambda function every 35 minutes
      - schedule: rate(35 minutes)
补充说明
  • 如果你的Lambda需要环境变量,直接在environment下定义键值对即可,所有值必须是字符串类型。
  • VPC配置是Lambda函数的顶级属性,不属于环境变量范畴,必须直接挂载在函数配置节点下。

内容的提问来源于stack exchange,提问作者Moisés López

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 21:03:11