运行工头来启动Node.js应用程序时出错

我正在尝试在我刚刚安装的Mint虚拟机上运行领class。 这是为了学习节点的目的。 我正在使用Heroku和他们的向导来让自己安装,但是当我尝试启动工头时,我碰到了一个路障。

错误消息是:

14:51:09 web.1 | started with pid 10739 14:51:09 web.1 | exited with code 1 14:51:09 system | sending SIGTERM to all processes SIGTERM received 

任何帮助将是伟大的!

如果你正在按照一个专门用于Heroku实例的指南,那么它将跳过一些在其他框上设置的步骤。 默认情况下,heroku实例已经安装了node.js ,因此在部署和启动第一个应用程序之前,不需要在框中进行设置。

在Linux Mint上安装Node.js。 请执行下列操作:

  1. 安装所需的工具

    sudo apt-get install g++ curl libssl-dev apache2-utils

    sudo apt-get install git-core

  2. 克隆并制作最新版本的Node.js

    git clone git://github.com/ry/node.git

    cd node

    ./configure

    make

    sudo make install

  3. 转到您的工作目录为这个项目并运行以下:

    npm install

    foreman start

您的Node.js应用程序示例现在应该在您的本地VM上工作。

要获取用于testing本地设置的示例节点应用程序,请执行以下操作:

 `git clone git@github.com:heroku/node-js-sample.git # or clone your own fork` `cd node-js-sample` `npm install` `foreman start` 

浏览到http://localhost:5000以查看示例应用程序。

我知道这已经有一段时间了,但是因为上面的答案都没有为我工作,所以我想我会发布我所做的让Heroku领class与Express 4一起工作(花了我很多时间来弄清楚!)

在你的app.js(或者你的input文件是):

添加这行app.use(express.static(path.join ….

 app.set('port', (process.env.PORT || 5000)); 

将以下行添加到文件的末尾:

 app.listen(app.get('port'), function() { console.log("Node app is running at localhost:" + app.get('port')) }); 

如果您使用的是快递生成器,请删除此行:

 module.exports = app;