2016-02-26 68 views
4

我想部署一个Heroku应用程序,我相信procfile可能是我的应用程序没有部署的原因。我尝试过多种解决方案,包括:如何使用bin/www编写node.js heroku部署的Procfile?

网:节点./bin/www 网站:NPM启动

有可能是另一个原因,我的应用程序无法正常工作,但我想确保我的Procfile设置正确

回答

4

这是我有:

  1. 在项目的根目录下一个名为Procfile(没有文件扩展名)
  2. 文件里面,第一行读小号web: bin/web
  3. bin目录也位于项目的鲁德目录,我有一个名为web文件,里面我有node ./bin/www(好,我有更多的,但让我们保持简单)。
  4. bin目录中有另一个文件,名为www,其中我有启动节点服务器的代码。
  5. bin目录两个文件都必须是可执行文件,并且你可以通过做chmod +x file_name

解释为Procfile

设置此如上所述,在Procfile我这一行:web: bin/web哪里

  1. web: - 是进程的名称,并需要web对Heroku的喜欢你:)
  2. bin/web - 是通向你的文件

我希望这有助于:)

+0

嘿谢谢你的帮助。不幸的是我的应用程序仍然没有部署,但至少我知道Procfile现在已经正确设置。这是我在日志中得到的消息: 2016-02-26T23:37:33.319462 + 00:00 heroku [router]:at = error code = H10 desc =“App crashed”method = GET path =“/” host = nodeguestbook.herokuapp.com request_id = 9bb42708-6af6-4762-80cb-d7a770c733de fwd =“97.90.145.90”dyno = connect = service = status = 503 bytes = –

+0

好的,你的应用程序开始了,但必须有东西你的代码错了。转到Heroku上应用程序的Deploy部分,向下滚动并点击手动部署,您将看到一个显示正在发生的事情的控制台。你会看到什么是错误的。 –

+0

好的,再次感谢所有的帮助!我正在翻阅日志,希望我能弄清楚它的含义。 –

0

你应该这样做:

web: ./bin/www npm start 

这是固定的,对我来说!