Я бы рекомендовал развернуть ваше приложение с Capistrano и определить хук after: deploy для запуска / перезапуска DJ при каждом развертывании.
Я бы также порекомендовал использовать Resque over DelayedJob, так как последний имеет склонность просто умирать безо всякой причины и обычно требует мониторинга Monit / God и перезапуска.
namespace :delayed_job do
desc "Start delayed_job process"
task :start, :roles => :app do
run "cd #{current_path}; script/delayed_job start #{rails_env}"
end
desc "Stop delayed_job process"
task :stop, :roles => :app do
run "cd #{current_path}; script/delayed_job stop #{rails_env}"
end
desc "Restart delayed_job process"
task :restart, :roles => :app do
run "cd #{current_path}; script/delayed_job restart #{rails_env}"
end
end
after "deploy:start", "delayed_job:start"
after "deploy:stop", "delayed_job:stop"
after "deploy:restart", "delayed_job:restart"