Unicorn + NginxでさくらVPSにデプロイしてみた
Unicorn + Nginxを使ってrailsアプリケーションをデプロイしてみたので、備忘録として残しておきます。
ここでは、Ruby, Railsの環境は入ってるものとします。
Unicorn
Unicornとは
UnicornとはRackアプリケーション向けのHTTPサーバーです。詳しいことはよくわからなかったので以下を参照ください。Everything You Need to Know About Unicorn
Unicorn!
Unicorn is an HTTP server for Ruby, similar to Mongrel or Thin. It uses Mongrel’s Ragel HTTP parser but has a dramatically different architecture and philosophy.
https://github.com/blog/517-unicorn
unicornのインストール
インストールはgemを使います。$ gem install unicorn
unicornの設定
railsアプリケーションのconfigディレクトリの配下にunicorn.rbというファイルを作成します。以下は最低限の設定しかしていませんが、ここにlogファイルの書き出し先とかタイムアウトとか設定することができます。
4行目、5行目に記述されているsockファイルやpidファイルについては自動に生成られるしいのでクライアントが作成する必要はありません。
pidファイルやsockファイル用のディレクトリを生成します。
unicornの起動
unicornの起動は以下のコマンドです。以下のコマンドはデーモンモードとしてバックグラウンド(-D)で起動させます。また、環境はdevelopment(-E)とします。
$ unicorn_rails -c /home/railsapp/config/unicorn.rb -E development -D
Nginx
Nginxとは
軽量・高速のwebサーバーです。エンジンエックスと読むらしいです。最近、シェアが伸び初めてきているみたいで注目のwebサーバーだそうです。アーキテクチャとかもっと詳しいことを知りたい方は以下を参考にしてください。
Nginxのインストール
$ sudo rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
$ sudo yum install -y nginx
これでインストールは終了です。確認するにはNginxサーバを動かします。
$ sudo service nginx start
起動できたらプラウザで確認すると下のような画面が表示されます。
Nginxの設定
/etc/nginx/conf.dの直下にアプリの設定ファイルを作成する。Nginxの起動
ここまでできたらNginxを再起動する$ service nginx restart
参考にさせていただいたサイト
CentOS 6.3にRails実行環境を構築する(Nginx+Rails+Unicorn+PostgreSQL)CentOS6で最新版のnginxをyumでインストールする
UbuntuでNginxとUnicornを使いRailsアプリを動かす
[開発環境] さくらVPS 開発環境編 (Rails+nginx+unicorn)