Ruby on Railsでデフォルトアプリケーションを作成し動かしたところ、何やらエラーが出ました。
$ rails new hello $ cd hello $ rails server -b 0.0.0.0 /usr/local/lib/ruby/gems/2.3.0/gems/bundler-1.11.2/lib/bundler/runtime.rb:80:in `rescue in block (2 levels) in require': There was an error while trying to load the gem 'uglifier'. (Bundler::GemRequireError)
どうやら、uglifierというgemが悪さをしているようです。
今回、このエラーが出たのは、Node.jsをインストールしていないことが原因でした。
詳細は省きますが、サーバー側にJavaScriptランタイムがないとこのエラーが出るみたいです。
解決策 (その1)
Node.jsをインストールします。
しかし、この方法だけではApache2からRailsアプリケーションを起動したときにエラーが出るので、本番環境で動かす予定なら解決策(その2)をやっておきます。
解決策 (その2))
こちらのサイトを参考にしました。
Gemfileの15行目あたりのコメントをはずします。
(変更前)
# gem 'therubyracer', platforms: :ruby
(変更後)
gem 'therubyracer', platforms: :ruby
バンドルインストールしてから、
$ bundle install
もう一度、railsコマンドを実行します。
$ rails s -b 0.0.0.0
うまくいきました。