読むとこhttp://devcenter.heroku.com/articles/heroku-commandhttp://devcenter.heroku.com/articles/ruby http://devcenter.heroku.com/articles/procfile http://theforeman.org/projects/foreman/wiki/Debian-Ubuntu_installation_by_packages
Bundlerって?ロードするgemをサーバとローカルで揃え、かつバージョンを固定するためのもの。http://www.oiax.jp/rails/rails3/bundler.html
stdoutがバッファリングされてheroku logsへの反映が遅れるのを回避webプロセスは、config.ruに$stdout.sync = true
workerプロセスは、エントリポイントの頭にでも書く webプロセスなしで、デーモンのみを起動したいgit pushだけでは起動しない。以下で起動。workerはProcfileに書いた名前。heroku scale worker=1
確認するには heroku ps
1回scaleすれば、次回からはpushのみでOK。
ローカルではsqlite, herokuではpostgresqlにしたいGemfileをgem 'sqlite3', :group => :development gem 'pg', :group => :productiondatabase.ymlはherokuが自動的に書き換えてくれるので、気にしなくていい トラブルシューティング
MongoMapperを使用すると、push時にassets:precompileで失敗production環境でのDBの設定が必要。mongo_mapper.rbも一部修正が必要。http://www.iwazer.com/~iwazawa/diary/2011/12/heroku-rails3-mongolab-mongomapper.html |