如何运行指定 node.js 版本 8 的 eb init?

Cha*_*ito 4 amazon-web-services node.js amazon-elastic-beanstalk

我运行eb init和部署,我得到 node.js 版本 6,我如何在执行eb init命令时指定我想要 node.js 版本 8 ?

pro*_*fan 5

这是一个有趣的问题,我很想知道是否有更简单的方法,但这是我的工作方式:

  1. 确定此处SolutionStack列出的最新名称。目前,这是“运行 Node.js 的 64 位 Amazon Linux 2017.09 v4.4.4”。

  2. 履行 eb init -p "64bit Amazon Linux 2017.09 v4.4.4 running Node.js"

  3. 创建一个.ebextensions目录。
  4. 创建文件 .ebextensions/nodejs_version.config
  5. 向其中添加以下代码段:

    option_settings:
      aws:elasticbeanstalk:container:nodejs:
        NodeVersion: 8.9.3
    
    Run Code Online (Sandbox Code Playgroud)
  6. eb create
  7. 环境开始构建后,您可以执行:

    aws elasticbeanstalk describe-configuration-settings \
      --environment-name <environment-name> \
      --application-name <application-name>
    
    Run Code Online (Sandbox Code Playgroud)

aws:elasticbeanstalk:container:nodejs命名空间中查找选项设置,您应该看到NodeVersion分配给 8.9.3。

理想情况下,“64bit Amazon Linux 2017.09 v4.4.4 running Node.js”本身应该标识最新版本;您不需要为此添加选项设置,不幸的是事实并非如此。