unicornを単体で動かす

環境構築

Ruby on railsでNginx+Unicorn+Ruby on railsで動作させる場合で、表示がされない場合に原因の切り分けをする為、unicornを単体起動の確認するプロジェクトを作成する。

前準備として、この記事を参考にしてrubyのインストール等を実行しておく事。

最小構成であるunicornでHellow wordを表示するプログラムを作成する。

gemファイルにunicornとsinatraを記入する。
sinatraはrubyフレームワークでシンプルな構成で使用できるので確認に丁度良い。

gem "unicorn"
gem "sinatra"

下記コマンドでインストールを実行する。

bundle install

config.ruに下記を記入する。

require 'rubygems'
require 'sinatra/base'
class HelloApp < Sinatra::Base
  get '/' do
    'Hello World!'
  end
end
run HelloApp

下記コマンドで実行する。

bundle exec unicorn

hppt://ipアドレス:8080/
にアクセスして「Hello World!」が表示されれば成功。

上記で実行すると、uicornが実行している間他のコマンドが実行できなくなる。
オプションで-Dを付ける事でデーモン化できる。
下記コマンドを実行すれば、unicorn実行中でも他のタスクを実行する事ができる。

bundle exec unicorn -c unicorn.rb  -D

デーモン起動中、実行されているかの確認は下記のコマンドでタスクの実行状況を確認できる。

ps -x