2012-07-16 48 views
2

我有一个Node.js应用程序,我试图部署到Heroku。然而,Heroku似乎认为它是一个Ruby应用程序,可能是因为它有一个Gemfile(我们有一个包含一些自定义脚本等的私有gem,以及用于命令行控制的Heroku gem本身)。我将Gemfile和Gemfile.lock添加到.slugignore(在Heroku's Slug Compiler article中讨论),但该应用仍然被检测为Ruby应用。强制Heroku将Node视为Node.js

$ git push heroku master 
Total 0 (delta 0), reused 0 (delta 0) 

-----> Heroku receiving push 
-----> Ruby app detected 
-----> Installing dependencies using Bundler version 1.2.0.pre 
     Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment 

捆绑失败,因为我们的自定义gem是一个私人回购,我从来没有得到任何进一步的。我无法找到任何强制Heroku将应用程序视为Node.js应用程序并使用Procfile启动Web应用程序的方法。有没有人有想法,我怎么能做到这一点?

回答

1

那么废话,我一定没有看得太远。这已被问及on Stack Overflow,答案是使用自定义Node.js构建包,一个la:

heroku config:add BUILDPACK_URL=https://github.com/heroku/heroku-buildpack-nodejs.git