Herokuエラー

HerokuでRailsアプリを公開しようとして躓いた所

自分はHerokuもRailsも初心者でして、

とりあえず rails new test で作った何も入っていないWebアプリケーションをHerokuで公開し、雰囲気を掴んでみたいと思いました。

その際にハマった所とその解決方法を数点挙げます。

※必ずしもここに書いてある解決策で解決するとは限らないのでご了承下さい。

git push heroku masterでこける

git push heroku masterをしようとしたら以下の様なエラーが。

An error occurred while installing sqlite3 (1.3.8), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v ’1.3.8′` succeeds before bundling.

!
!     Failed to install gems via Bundler.
!
!     Detected sqlite3 gem which is not supported on Heroku.
!     https://devcenter.heroku.com/articles/sqlite3
!
!     Push rejected, failed to compile Ruby app

 解決策

heroku上ではsqliteが使えないので、Gemfileを書き換える。

group :development, :test do
    gem 'sqlite3'
end
group :production do
    gem 'pg'
end

rake db:migrate で失敗する件

-> % rake db:migrate
(in heroku_test/MangaRanking)

rake aborted!

no such file to load — bundler/setup

heroku_test/MangaRanking/Rakefile:4:in `require’

(See full trace by running task with –trace)

解決策

bundler入れます。

-> % sudo gem install bundler

assetsとかいうのの設定が必要な可能性もあり
rakeが古い場合、以下の方法で直る場合もあるらしいです。

-> % sudo gem update --system
-> % sudo gem update rake

謎のシンタックスエラー

syntax error,
unexpected ‘:’, expecting kEND

gem ‘sdoc’, require: false

解決策

gem ‘sdoc’, require: false を gem ‘sdoc’, :require => false に書き換える

heroku openしたけどエラーな件

The page you were looking for doesn’t exist.
You may have mistyped the address or the page may have moved.
If you are the application owner check the logs for more information.

解決策

デフォルトの何も入っていない状態のアプリケーションを公開するとこうなる。

public/index.html など用意してあげればそれが表示されるはずです。