免責事項:私は、RailsとCapistrano(しかし、中間的な.NET C#開発者)の悩みで、もっと学びたいと思っています。Capistranoを使ってRails 2.3.2アプリを上から(FastCGI用に)デプロイするには?
私はCapistrano開発プロセスのセットアップに苦労しています。ここ
set :application, "MyAppName"
set :domain, "domainname"
set :user, "userid"
set :repository, "svn+ssh://#{user}@#{domain}/home/#{user}/svn/#{application}/trunk"
set :rails_env, :production
set :chmod755, %w(app config db lib public vendor script tmp public/dispatch.cgi public/dispatch.fcgi public/dispatch.rb)
set :deploy_to, "/home/#{user}/apps/#{application}"
set :use_sudo, false
set :deploy_via, :checkout
set :group_writable, false
default_run_options[:pty] = true
role :app, domain
role :web, domain
role :db, domain, :primary => true
私Capfileます:ここで私は私のdeploy.rbのために、これまで持っているものだ
load 'deploy' if respond_to?(:namespace) # cap2 differentiator
Dir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }
load 'config/deploy'
namespace :deploy do
task :restart, :roles => :app do
run "#{current_path}/script/process/reaper --dispatcher=dispatch.fcgi"
end
desc "Set the proper permissions for directories and files on HostingRails accounts"
task :after_deploy do
run(chmod755.collect do |item|
"chmod 755 #{current_path}/#{item}"
end.join(" && "))
end
end
- のRails 2.3.2再起動タスクはdoesnのようにスクリプト/プロセスディレクトリを持っていませんまったく働きません。これをどうやって解決するのですか?
- アプリケーションがデプロイされているときにenvironment.rbのRAILS_ENV変数を "production"に設定する方法はありますか( "set:rails_env、:production"ではできません)?
- また、私はこれらの2つのファイルから何かが欠けていますか?私の答えを更新しました
あなたのサンプルコードは私にカピストラノの使い方を理解させる助けになりました。さまざまなシナリオのための変数とタスクを持つ標準のdeploy.rb&Capfileを正しく設定する方法に関する公式の文書を見つけるのは非常に困難です。 – gabe
喜んで助けました。私がそれを書いたとき、ドキュメンテーションの不足はさらに顕著であり、ウェブ上で見つけたビットとピースから一緒に石畳ができました。 –
私はかなり同じことをしています。まもなく私の最終版をアップデートとして投稿します。 – gabe