Javascript 将node.js应用程序部署到elastic beanstalk(使用express)

Javascript 将node.js应用程序部署到elastic beanstalk(使用express),javascript,node.js,amazon-web-services,express,Javascript,Node.js,Amazon Web Services,Express,我今天一整天都在将我的应用程序部署到elastic beanstalk时遇到问题。我有以下项目结构(使用react构建的单页应用程序) 我将其压缩并上传到运行node.js的elastic beanstalk 这里是app.js var express = require('express'); var app = express(); app.use(express.static(__dirname + '/dist')); app.get('/*', function(req, res)

我今天一整天都在将我的应用程序部署到elastic beanstalk时遇到问题。我有以下项目结构(使用react构建的单页应用程序)

我将其压缩并上传到运行node.js的elastic beanstalk

这里是app.js

var express = require('express');
var app = express();

app.use(express.static(__dirname + '/dist'));

app.get('/*', function(req, res){
  res.sendFile(__dirname + '/dist/index.html');
});

app.listen(8080, function() {
  console.log('Listening on port: ' + 8080);
});

在本地,这一切都很好,但是警告是正确的。

对于任何遇到类似问题的人来说,事实证明这与我使用的一些依赖项有关,因此值得将它们降级,而不要使用
^version


您可以通过eb生成的日志找到关于此的更多信息。

@davka
应用程序更新在2016-02-05T16:50:37Z失败,退出状态为1,错误为:Hook/opt/elasticbeanstalk/hooks/appdeploy/pre/50npm.sh失败。
此命令似乎是一个问题
node pre-gyp
(aws运行它,我不知道它是什么,但在它运行之后,我得到了大量的错误,前缀为
gyp ERR!
var express = require('express');
var app = express();

app.use(express.static(__dirname + '/dist'));

app.get('/*', function(req, res){
  res.sendFile(__dirname + '/dist/index.html');
});

app.listen(8080, function() {
  console.log('Listening on port: ' + 8080);
});