第4回 capify
今回は、Rails アプリケーションをデプロイメントする準備。
以下、あなたの Rails アプリケーションの名前を ballad とする。
また、本番サーバのホスト名を alpha.oiax.jp とし、デプロイ先のディレクトリを /var/rails/ballad/ とする。
Subversion レポジトリの URL は https://repository.oiax.jp/svn/ballad/trunk。
なお、これらのホスト名、URL はすべて架空のものである。
ballad アプリケーションのルートディレクトリに移動して、コマンド capify . を入力。
% capify . [add] writing `./Capfile' [add] writing `./config/deploy.rb' [done] capified!
生成されたファイルの一つ Capfile の中身は次の通りだが、このファイルは基本的に書き換えない。
load 'deploy' if respond_to?(:namespace) # cap2 differentiator
Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }
load 'config/deploy'
config ディレクトリに生成される deploy.rb ファイルの初期状態は、次の通り:
set :application, "set your application name here"
set :repository, "set your repository location here"
# If you aren't deploying to /u/apps/#{application} on the target
# servers (which is the default), you can specify the actual location
# via the :deploy_to variable:
# set :deploy_to, "/var/www/#{application}"
# If you aren't using Subversion to manage your source code, specify
# your SCM below:
# set :scm, :subversion
role :app, "your app-server here"
role :web, "your web-server here"
role :db, "your db-server here", :primary => true
これを、次のように書き換える。
set :application, "ballad"
set :repository, "https://repository.oiax.jp/svn/ballad/trunk"
set :deploy_to, "/var/rails/#{application}"
set :user, "app"
set :use_sudo, false
role :app, "alpha.oiax.jp"
role :web, "alpha.oiax.jp"
role :db, "alpha.oiax.jp", :primary => true
set :user, "app" で、リモートホストに SSH でログインするユーザーを app に設定している。他のユーザー(例えば、rails)を使っている場合は、書き換える。
その次の行の、set :use_sudo, false は、Rails アプリケーションの起動時等に sudo を使うかどうかを制御する変数。我々の例では、app ユーザーで起動するので、false にしておく。
[改訂] 2008/05/17 ユーザー app でリモートホストにログインする方式に合わせて記述を修正。
(2008/03/27)
記事に関するご質問は、 hermes@oiax.jp までメールでお送りください。
ウェブサイト構築の発注先を検討されているお客様は、ご相談フォームをご利用ください。
- はじめに
- 第1回 インストール (2008/03/24)
- 第2回 SSH 公開鍵の設置 (2008/03/25)
- 第3回 Windows で Capistrano (2008/03/26)
- 第4回 capify (2008/03/27)
- 第5回 ターゲットホストの準備 (2008/03/28)
- 第6回 deploy:update (2008/03/29)
- 第7回 Rails アプリケーションの起動・停止・再起動 (2008/05/17)
- 第8回 deploy:rollback と deploy:cleanup (2008/05/18)
- 第9回 メンテナンスページへの切り替え (2008/06/03)

