将子目录部署到Heroku

Jam*_*ght 20 ruby-on-rails heroku

我在GitHub中有一个"超级"存储库,它将包含我想要部署到Heroku的几个应用程序.这是我的存储库的一个例子.

/app
  /.git
  /website <-- would like to deploy this to Heroku
Run Code Online (Sandbox Code Playgroud)

当我尝试使用以下命令推送时:

$ git push heroku master
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Heroku push rejected, no Rails or Rack app detected.
Run Code Online (Sandbox Code Playgroud)

如何将子目录部署到Heroku?

小智 22

这可以通过在您的根目录中放置一个config.ru来告诉Heroku在哪里找到您的应用程序来实现.例如,使用Rails 3,在根目录中尝试这样的config.ru:

WEBSITE_SUBDIR = 'website'
require "#{WEBSITE_SUBDIR}/config/environment"
run YourApplicationName::Application
Run Code Online (Sandbox Code Playgroud)

在Rails 2.x上,你需要这样的东西:

WEBSITE_SUBDIR = 'website'
require "#{WEBSITE_SUBDIR}/config/environment"
use Rails::Rack::LogTailer
use Rails::Rack::Static
run ActionController::Dispatcher.new
Run Code Online (Sandbox Code Playgroud)

  • 我尝试了这个但它没有用,最后我把Rails应用程序放入它自己的回购中 (2认同)