0

我以前从未使用过 Node.js,但我只是想在 Heroku 上运行一个示例应用程序。我正在运行的应用程序是

https://github.com/heroku-examples/geosockets

我可能错了,因为我不熟悉 node.js,但我认为Procfile可能不正确:

web: coffee index.coffee
redis-dev: redis-server
grunt-dev: grunt watch

当我尝试运行任何一个redis-servergrunt watch在我的终端上运行时,它们都不起作用。我也试过跑步foreman start

我的问题是我需要做什么才能让这个应用程序在本地运行?如何运行redis 服务器和grunt 进程?


编辑- 一旦我通过 Ubuntu 包管理器安装了 redis,我现在可以从命令行redis-server 本地运行。但是,在 Heroku 上,当我尝试启动 redis worker dyno 时,它会在日志中说明这一点。

2013-11-13T06:55:53.219721+00:00 heroku[redisdev.1]: Starting process with command `redis-server`
2013-11-13T06:55:53.777822+00:00 app[redisdev.1]: bash: redis-server: command not found
2013-11-13T06:55:54.830721+00:00 heroku[redisdev.1]: Process exited with status 127
2013-11-13T06:55:54.843111+00:00 heroku[redisdev.1]: State changed from starting to crashed

同样,当我尝试在 Heroku 上启动 grunt worker 时,我在日志中收到类似的消息

2013-11-13T07:24:03.612764+00:00 heroku[gruntdev.1]: Starting process with command `grunt watch`
2013-11-13T07:24:04.215564+00:00 app[gruntdev.1]: bash: grunt: command not found
2013-11-13T07:24:05.416066+00:00 heroku[gruntdev.1]: Process exited with status 127
2013-11-13T07:24:05.427289+00:00 heroku[gruntdev.1]: State changed from starting to crashed

如何配置我的应用程序以在 Heroku 上运行这些?

4

1 回答 1

0

好的,所以经过进一步调查,我现在可以在本地运行它。我认为该npm install命令已经设置了我需要的一切,但事实并非如此。

首先,我通过 ubuntu 包管理器安装了 redis-server

sudo apt-get install redis-server

然后我发现我需要安装Grunt 命令行界面

sudo npm install -g grunt-cli

但是,我仍然无法让这些在 Heroku 上运行

于 2013-11-13T07:21:24.370 回答