rvm+passenger3+nginxで作るRailsアプリケーションサーバ
- rvm : Ruby Version Manager。コマンド一つでRubyバージョンを切り替えたりgemsetとかを切り替えたりできます。
- nginx : 軽量WebProxy。HTTPサーバとしても使えます。
- Passenger : mod_railsとも。Ruby on Railsをデプロイするときに超便利。
まぁ、ここを見ればとりあえずはいいわけですが。
[RVM Document : Passenger]
http://rvm.beginrescueend.com/integration/passenger/
僕の方ではこうしました。
- RVMはSystem Wide Install ( prefix = /usr/local/rvm )
- アプリケーション用のバージョンとgemsetをインストールしておく
rvm install 1.9.2-head rvm use 1.9.2-head rvm gemset create my_app rvm gemset use my_app cd /RailsApp/Path/ gem install bundler # (Rails3の場合) bundle install # (Rails3の場合)
- nginx は既存のアプリケーションと分けるためにホームディレクトリ以下におく ( /home/user/nginx )
- nginx.confには次のような内容を記述
passenger_root /usr/local/rvm/gem/1.9.2-head@my_app/gems/passenger-3.0.2 ; passenger_ruby /usr/local/rvm/wrapper/1.9.2-head/ruby ; location / { port 8080; # ... passenger_enabled on; root /RailsApp/Path/public; }
これでアプリケーションを動かすことができる。
rvmを使った理由は、以下の環境を同時に構築するため。
むちゃくちゃさせてる気がするけど、動いてるからよし。