如何在cloudformation中为我的beantalk定义nodejs的版本

Posted

技术标签:

【中文标题】如何在cloudformation中为我的beantalk定义nodejs的版本【英文标题】:How to define the version of nodejs for my beanstalk in cloudformation 【发布时间】:2017-12-26 15:41:57 【问题描述】:

我正在尝试使用特定版本的 nodejs 创建 beanstalk:

这是我在 cloudformation 中的 beanstalk 设置选项:

    "configurationTemplate": 
  "Type": "AWS::ElasticBeanstalk::ConfigurationTemplate",
  "Properties": 
    "ApplicationName": 
      "Ref": "xxxxx"
    ,
    "Description": "AWS ElasticBeanstalk Sample Configuration Template",
    "OptionSettings": [
      
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "MinSize",
        "Value": 
          "Ref": "MinEc2s"
        
      ,
      
        "Namespace": "aws:autoscaling:asg",
        "OptionName": "MaxSize",
        "Value": 
          "Ref": "MaxEc2s"
        
      ,
      
        "Namespace": "aws:elasticbeanstalk:environment",
        "OptionName": "EnvironmentType",
        "Value": "LoadBalanced"
      ,
      
        "Namespace": "aws:autoscaling:launchconfiguration",
        "OptionName": "InstanceType",
        "Value": 
          "Ref": "InstanceType"
        
      ,
      
        "Namespace": "aws:ec2:vpc",
        "OptionName": "VPCId",
        "Value": 
          "Ref": "VpcIdBn"
        
      ,
      
        "Namespace": "aws:ec2:vpc",
        "OptionName": "Subnets",
        "Value": 
          "Ref": "SubnetIds"
        
      
     ],
     "SolutionStackName": "64bit Amazon Linux 2017.03 v4.2.0 running 
      Node.js"
  

如您所见,我将我需要的堆栈解决方案定义如下:

"SolutionStackName": "64bit Amazon Linux 2017.03 v4.2.0 running 
      Node.js"

当我运行它时,一切正常,并且我的 beanstalk 被创建,但是节点版本为 6.x.x 但是我需要更新版本的 nodejs。我检查了我手动创建的 benastalk,我注意到 beanstalk 可以接受版本 7.10.1,这是我需要的版本。所以我改变了stacksolution如下:

"SolutionStackName": "64bit Amazon Linux 2017.03 v4.2.0 running 
      Node.js 7.10.1"

当我运行 cloudformation 时,它无法运行。那么我有什么遗漏吗?如何定义要安装的节点版本?有什么想法吗?

【问题讨论】:

【参考方案1】:

你试过添加下面的代码吗?

  OptionSettings:
  - Namespace: aws:elasticbeanstalk:container:nodejs
    OptionName: NodeVersion
    Value: "8.11.3"

【讨论】:

以上是关于如何在cloudformation中为我的beantalk定义nodejs的版本的主要内容,如果未能解决你的问题,请参考以下文章

在 Cloudformation 模板中为 API 网关启用 CORS DEFAULT 4XX/5XX

如何在 CloudFormation 模板中为 Elastic Beanstalk 启动配置指定安全组?

如何在我的 podfile 中为我的 Xcode 项目指定多个目标?

如何在 vuetify 中为我的视图应用更多填充?

如何在rest框架中为我的注册视图编写登录视图?

如何在 C# 中为我的控件添加移动效果?