私はRails 5アプリケーションでActive JobのキューバックエンドとしてDelayed Jobを使用していますが、起動後にUbuntu 14.04で作業者を開始する方法はわかりません。私はrails jobs:work
をBashスクリプトにラップする必要がありますか?どのように私はそれが自動的に始まるでしょうか?またはbin/delayed_job
を使用することをお勧めしますか?Ubuntuで遅延ジョブを開始するには?
起動時に遅延ジョブを開始するにはどうすればよいですか?
私はRails 5アプリケーションでActive JobのキューバックエンドとしてDelayed Jobを使用していますが、起動後にUbuntu 14.04で作業者を開始する方法はわかりません。私はrails jobs:work
をBashスクリプトにラップする必要がありますか?どのように私はそれが自動的に始まるでしょうか?またはbin/delayed_job
を使用することをお勧めしますか?Ubuntuで遅延ジョブを開始するには?
起動時に遅延ジョブを開始するにはどうすればよいですか?
あなたがどのOSを使用しているのかは問題ありません(Windowsでない限り:D)。コマンドが処理を開始する
:
bundle exec rake jobs:work
delayed_jobにコマンドを再起動するには、次のとおりです。
RAILS_ENV=production script/delayed_job restart
は、詳細はgems READMEをチェックしてください。
(コメントによる)
あなたは、ユーザーのホームstart_delayed_jon.sh
にいくつかのbashスクリプトを作成することができます。
線に沿って何か:
#!/bin/bash
cd /path/to/your/project/directory/
RAILS_ENV=development bundle exec rake jobs:work
と/etc/rc.localの中でそれを実行します。
su -s /bin/bash - deploy /path/to/your/project/directory/start_delayed_jon.sh
Whenever Gem、あなたができるセットアップ再起動時にそれを実行するcronジョブを使用しました。あなたのすくいファイルで次に
every :reboot do
rake 'start_delayed_jobs'
end
:あなたのschedule.rbファイルで
desc 'Start delayed jobs'
task :start_delayed_jobs do
system("#(Rails.root}/bin/delayed_job start")
end
end
これはうまくいきますが、typo - > system( "#{Rails.root}/bin/delayed_job start" – Jay
うん、それは私が私のdevのマシン上でそれを起動するが、どのように私はUbuntuは、サーバの起動時に自動的に起動している方法は? – ilovebigmacs
@ilovebigmacs編集 –
PSを参照してください。私はDJの代わりに「サイドキック」をお勧めします。 –