React等のフロントエンド系のサンプルではサーバとして動かすためではなくnpmというモジュール管理ツールをインストールするためにNode.jsをインストールしています。(npmはRubyでいうGemのようなイメージです)
そのため、Rails上でReactを動かすことは可能ですが、その場合でもNode.jsのインストールは必要となります。
ざっくりとした流れとしては、以下の流れでRailsとReactを共存させることが出来ます。
- Node.jsをインストール(同時にnpmもインストールされる)
- npmで必要なパッケージをインストール(React, Webpack, Babel等)
- WebpackでReact含むフロントエンド部分をビルド
- ビルドの生成物のjsファイルをRailsで管理するhtmlから読み込むよう設定
なお、RailsのAssetPipelineにReactをぶら下げるためのGemもありますのでそれを利用するとより楽に開発出来ます。
余談ですが、create-react-appでnpm start
を実行したときに起動するサーバは、wepack-dev-serverといって、フロントエンド開発をより便利にするための開発用サーバのようなイメージですので、Node.jsサーバの用に本番利用できるものではないです。