Amazon web services 未知或重复参数:NodeCommand

Amazon web services 未知或重复参数:NodeCommand,amazon-web-services,amazon-elastic-beanstalk,Amazon Web Services,Amazon Elastic Beanstalk,我正在尝试使用Elastic beanstalk部署Node.js API 我想设置node命令以启动应用程序 这是我的nodecommand.config: option_settings: aws:elasticbeanstalk:container:nodejs: NodeCommand: "npm start" 这是我的文件结构: 每当我尝试运行eb deploy时,都会出现以下错误: 2020-05-13 19:03:44 INFO Environment

我正在尝试使用Elastic beanstalk部署Node.js API

我想设置node命令以启动应用程序

这是我的nodecommand.config:

option_settings:
  aws:elasticbeanstalk:container:nodejs:
    NodeCommand: "npm start"
这是我的文件结构:

每当我尝试运行
eb deploy
时,都会出现以下错误:

2020-05-13 19:03:44    INFO    Environment update is starting.      
2020-05-13 19:03:48    ERROR   "option_settings" in one of the configuration files failed validation. More details to follow.
2020-05-13 19:03:48    ERROR   Unknown or duplicate parameter: NodeCommand 
2020-05-13 19:03:48    ERROR   Failed to deploy application.        

ERROR: ServiceError - Failed to deploy application.

我刚刚遇到了同样的问题。经过调查,我发现“NodeCommand”是使用自定义命令运行应用程序的传统方式

我删除了“.ebextensions”目录,并在源目录中添加了一个名为“Procfile”的文件

在Procfile中,尝试放置以下内容:

web: npm start
如果有必要,请确保在尝试部署之前使用这些更改更新存储库


希望这有帮助

对于那些通过谷歌来到这里的人,我也遇到了类似的问题,得到了这样的回应:

错误:ServiceError-配置验证异常:未知或重复参数:NodeVersion

在尝试了很多东西之后,我知道这是我的遗产。我删除了该文件,并在我的应用程序根目录下添加了一个ProcFile(文件名区分大小写,似乎没有必要的扩展名),行为: 网络:npm开始


那个错误消失了(被另一个关于角色权限的错误所取代,但任何进展都是良好的进展,对吗?)

我使用Procfile部署应用程序

在程序文件中

web: npm run deploy
在package.json中,添加了新的命令deploy

 "scripts": {
    "deploy": "npm run build && npm run start"
  },

谢谢这帮了大忙。他们的信息相互矛盾。难道不应该是npm开始吗?听到这个消息太好了!我认为NPMStart引用了package.json中的脚本。所以是的,如果你的“开始”脚本有你需要的,你应该这样做。我使用一个Express服务器来处理我的静态React应用程序文件,所以我使用node运行它。这实际上是一个精确的解决方案。这很有效。不应该更新吗?我通过删除.ebextensions目录解决了这个问题。我也没有创建Procfile目录。当您不提供Procfile时,如果您提供package.json文件,ElasticBeanstalk将运行
npm start
。以上内容将提供一些见解。