「Capistrano」の編集履歴(バックアップ)一覧はこちら

Capistrano」(2008/06/09 (月) 00:00:14) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

**アプリケーション名 Capistrano(きゃぴすとらーの) **このアプリケーションでできること +deploy用アプリケーション。 +SSHでアクセス可能で、同じユーザ名/パスワードで、同じディレクトリ構成のものであれば、複数台に配置可能(配置先サーバ名を設定に追加するだけ) +subversionからのエクスポートを手動やwebアプリからキックするより、セキュア&合理的 +配置先でマイグレーション可能。 +配置先でfcgiやmongrelなどの再起動可能 +配置先でのロールバック(一つ前の配置状態に戻す)可能 +配置先は過去の配置状態を時系列で保持している(ディレクトリ名をタイムスタンプとして保持) **対象バージョン 1.2系 **インストール方法 -gemから >gem install capistrano **ちょー簡単な使い方 > gem install -y capistrano でインストール。 MaxOSX 10.5だと最初からインストール済みだね。 Railsのホームディレクトリ(rail hogeで作ったディレクトリ)で > capify . とやると > ./config/deploy.rb が作られるのでこの中身の > set :application, "set your application name here" ←アプリケーション名。適当につける > set :repository, "set your repository location here"  ←subversionのリポジトリ位置 > role :app, "your app-server here" ←Railsのインスタンスを立ち上げるサーバのIPまたはドメイン名 > role :web, "your web-server here" ←静的ファイルの応答を行うサーバのIPまたはドメイン名 > role :db, "your db-server here", :primary => true ←DBのインスタンスを立ち上げるサーバのIPまたはドメイン名 を適当に書き換えた後、必要に応じて > set :use_sudo, false ←接続先ではsudoする必要があるか > set :user, "Your user name" ←SSHでログインするときのユーザ名(各サーバ同じ) > set :scm_user, "Your SCM user name" ←subversionなどのアクセス用ユーザ名(でもうまく動かない) > set :scm_password, "Your SCM Password" ←subversionなどのアクセス用パスワード(でもうまく動かない) を追加。(詳しい意味は下記H.F.Fさんページ参照。ちなみにscm_userとpasswordは自分の環境ではうまく動かなかった) これで設定は終わったはずなので、 > cap deploy:setup で配置先に初期ディレクトリなどを用意して、1回目の配置は > cap deploy:cold 2回目以降は >cap deploy で配置できるはず。マイグレーションなどもできちゃう。 途中でsshでの接続のためのユーザパスワードを聞かれるので答えるように。(この辺はsshの設定による) 配置先でrailsインスタンスを再起動したいならば > ./script/spin というファイルを作って、 > /path/to/current/script/process/spawner -p 11000 -i 3 とだけ書いて保存し、subversionのプロパティで実行権限を付けておくと、起動してくれるようになる。 script/process/*も実行権限いるね。 ※注 [[Passenger]]使うならspinスクリプトはいらない。 たぶん実際には、SSH絡みとか./config/*の設定とか、gemとか各種バージョンによって、まずすんなり動かないと思うが、がんがってくれ。 一度動けばうはうはだ。 **公式ページ -[[Capistrano>>http://www.capify.org/]] ※Getting Started→Railsあたりを読もう **日本語解説ページ -[[Studio H.F.F. Capistrano 2.1 利用法>>http://blog.studiohff.net/2007/11/introduction_capistrano_2_1.html]] ※現時点で一番まとまっている -[[FFTT Capistrano>>http://tech.feedforce.jp/capistrano.html]] ※全体的な話 -[[Haida’s private weblog Capistrano による Deploy>>http://d.hatena.ne.jp/haida/20071209/1197189479]] ※よくまとまっています **外国語解説ページ -いまいちいいサイトがない **のうはう -アップロードしたファイルとか、バージョンが変わっても保持したいデータは、デプロイ先のcurrent/public/system以下に配置すれば、share/systemにシンボリックリンクが張られるから保持できるようになる。 ***コメント #pcomment(reply)
**アプリケーション名 Capistrano(きゃぴすとらーの) **このアプリケーションでできること +deploy用アプリケーション。 +SSHでアクセス可能で、同じユーザ名/パスワードで、同じディレクトリ構成のものであれば、複数台に配置可能(配置先サーバ名を設定に追加するだけ) +subversionからのエクスポートを手動やwebアプリからキックするより、セキュア&合理的 +配置先でマイグレーション可能。 +配置先でfcgiやmongrelなどの再起動可能 +配置先でのロールバック(一つ前の配置状態に戻す)可能 +配置先は過去の配置状態を時系列で保持している(ディレクトリ名をタイムスタンプとして保持) **対象バージョン 1.2系 **インストール方法 -gemから >gem install capistrano **ちょー簡単な使い方 > gem install -y capistrano でインストール。 MaxOSX 10.5だと最初からインストール済みだね。 Railsのホームディレクトリ(rail hogeで作ったディレクトリ)で > capify . とやると > ./config/deploy.rb が作られるのでこの中身の > set :application, "set your application name here" ←アプリケーション名。適当につける > set :repository, "set your repository location here"  ←subversionのリポジトリ位置 > role :app, "your app-server here" ←Railsのインスタンスを立ち上げるサーバのIPまたはドメイン名 > role :web, "your web-server here" ←静的ファイルの応答を行うサーバのIPまたはドメイン名 > role :db, "your db-server here", :primary => true ←DBのインスタンスを立ち上げるサーバのIPまたはドメイン名 を適当に書き換えた後、必要に応じて > set :use_sudo, false ←接続先ではsudoする必要があるか > set :user, "Your user name" ←SSHでログインするときのユーザ名(各サーバ同じ) > set :scm_user, "Your SCM user name" ←subversionなどのアクセス用ユーザ名(でもうまく動かない) > set :scm_password, "Your SCM Password" ←subversionなどのアクセス用パスワード(でもうまく動かない) を追加。(詳しい意味は下記H.F.Fさんページ参照。ちなみにscm_userとpasswordは自分の環境ではうまく動かなかった) ***更新 subversionなどで、checkoutなどにユーザ名とパスワードが必要だった場合、上記scm_userとscm_passwordを使ってみたけど、コケてしょぼーんだったのが昨日までの話。よくよく考えてみると、 > set :repository, "--username your_user_name --password your_password http://example.com:/path/to/your/repository" でいいじゃんって事になった。確かにこれで動くしね。 これで設定は終わったはずなので、 > cap deploy:setup で配置先に初期ディレクトリなどを用意して、1回目の配置は > cap deploy:cold 2回目以降は >cap deploy で配置できるはず。マイグレーションなどもできちゃう。 途中でsshでの接続のためのユーザパスワードを聞かれるので答えるように。(この辺はsshの設定による) 配置先でrailsインスタンスを再起動したいならば > ./script/spin というファイルを作って、 > /path/to/current/script/process/spawner -p 11000 -i 3 とだけ書いて保存し、subversionのプロパティで実行権限を付けておくと、起動してくれるようになる。 script/process/*も実行権限いるね。 ※注 [[Passenger]]使うならspinスクリプトはいらない。 たぶん実際には、SSH絡みとか./config/*の設定とか、gemとか各種バージョンによって、まずすんなり動かないと思うが、がんがってくれ。 一度動けばうはうはだ。 **公式ページ -[[Capistrano>>http://www.capify.org/]] ※Getting Started→Railsあたりを読もう **日本語解説ページ -[[Studio H.F.F. Capistrano 2.1 利用法>>http://blog.studiohff.net/2007/11/introduction_capistrano_2_1.html]] ※現時点で一番まとまっている -[[FFTT Capistrano>>http://tech.feedforce.jp/capistrano.html]] ※全体的な話 -[[Haida’s private weblog Capistrano による Deploy>>http://d.hatena.ne.jp/haida/20071209/1197189479]] ※よくまとまっています **外国語解説ページ -いまいちいいサイトがない **のうはう -アップロードしたファイルとか、バージョンが変わっても保持したいデータは、デプロイ先のcurrent/public/system以下に配置すれば、share/systemにシンボリックリンクが張られるから保持できるようになる。 ***コメント #pcomment(reply) ***トラックバック &link_trackback(text=トラックバック表示)

表示オプション

横に並べて表示:
変化行の前後のみ表示: