タグ: Node.js

  • なぜ、Ruby on Railsの動作にNode.jsが必要なのか

    Roby on Railsの環境を用意しないといけなくなったので、Ubuntuでの構築方法を調べていたところ、インストールの中に、Sqlite3-devとNode.jsがあった。Sqlite3-devは、Railsの管理のために必要ということなので、納得。だが、Node.jsがわからない。Node.jsはサーバサイドのJavaScript実行環境なので、rubyは関係ない。関係ないが、Railsには必要だという。気持ち悪いので、調べた。

    それでわかったことは

    • Rails3.1以降、Ubuntuでの開発にはJavaScriptのランタイムが必要になった。
    • JavaScriptのランタイムは、Railsアセットパイプライン(Rails asset pipeline)のコードをコンパイルするのに必要。
    • Node.jsをインストールすることで、サーバサイドでのJavaScriptの実行環境が整う。
    • 参照元: http://railsapps.github.io/installrubyonrails-ubuntu.html

    ということ。Railsの一部をコンパイルするときにJavaScriptのランタイムが必要で、それを準備するための最適解がNode.jsのインストール。すっきり。

    なお、Node.jsをインストールしない場合は、ビルドするRailsアプリケーションのGemfileに下記の設定追加が必要。

     gem 'therubyracer'