Unicornの導入とプロセスコントロール

概要

EngineYardCloudで、Unicornを導入する方法とプロセスコントロール、カスタマイズについて説明します。

1. RailsへのUnicorn導入

  1. 新しいApplicationを作るときに、Application Server StackにてUnicornを選択します。
  2. Gemfileにunicornを追加します

    gem 'unicorn' 
  3. bundle installを行い、Gemfile, Gemfile.lockの変更をコミットます。(Gemfile.lockのコミットもお忘れなく!)

    $bundle install 

    $git commit -a -m "Gemfile updated for Unicorn"
    $git push origin

この状態でデプロイすればunicornでrailsアプリケーションを動かすことができます。

2. プロセスのコントロール (start/stop/reload/restart/status)

appインスタンスにて、unicornプロセスを直接コントロールする時は以下を叩くことによって可能です。

ApplicationNameによって実行コマンドが変わります。

$/engineyard/bin/app_#{app_name} restart

ey コマンドでappインスタンス全てに適応することもできます。

$ey ssh '/engineyard/bin/app_#{app_name} reload' --app-servers

 また、applicationプロセスの再起動はもっと簡単に行うこともできます。

$ey web restart  

TroubleShooting

1. rackのエラーがでる

以下の様なエラーが出る場合Gemfileにunicornが記述されていない可能性が考えられています。確かめて1.の手順を試してください。

`block in setup': You have already activated rack 1.5.2, but your Gemfile requires rack 1.4.5. Using bundle exec may solve this. (Gem::LoadError) 

2. windowsなのでunicornがbundle install できない

RAILS_ENVで読み分けてください。

group :production do
gem 'unicorn'
end

コメント

サインインしてコメントを残してください。

Powered by Zendesk