난 3.09 (ruby 1.9.2)에서 작동하는 delayed_job을 얻는 데 어려움을 겪고 있습니다. 내가 성공할 수 있었던 유일한 방법은 rake 명령 인 tape 명령을 테이프로 묶는 것이다. 하지만 레일즈 애플리케이션이 시작될 때 자동으로 시작되기를 원합니다.delayed_job에서 우분투와 함께 monit으로 실행
우분투 아래에 monit을 설치했고, 내 응용 프로그램에있는 파일을 실행하도록 구성했습니다. 이 같은 모습을 실패
check process delayed_job with pidfile /home/me/myapp/tmp/pids/delayed_job.pid
start program = "/home/me/myapp/script/delayed_job start"
stop program = "/home/me/myapp/script/delayed_job stop"
그리고 나는 delayed_job 스크립트 파일에서 환경 설정 추가 :
: 나는 명령을 실행하면 내가받을 다음과 같은 오류 "sudo는 MONIT delayed_job 시작"#!/usr/bin/env ruby
ENV['RAILS_ENV'] = "development"
require File.expand_path(File.join(File.dirname(__FILE__), '..', 'config', 'environment'))
require 'delayed/command'
Delayed::Command.new(ARGV).daemonize
을
/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- bundler/setup (LoadError)
그래서 나는 sudo는 내가 다음의 해결책을 시도 루비 환경 의 잘못된 버전을 사용하고 있기 때문에 추측 : rvm monit delayed_job
시작 프로그램/정지 프로그램 행에 rvm -S를 추가합니다. 는하지만 여전히 오류와 함께 실패 : RVM 명령을 찾을 수 없습니다
내 RVM의 디렉토리는 내가에서 해결 방법을 찾기 위해 노력내 홈 디렉토리의 /home/me/.rvm에 위치한
(sudo changes PATH - why?) 경로를 변경 환경 변수를 추가하여
/usr/bin/env PATH=/home/me/.rvm/bin:$PATH
"sudo monit start delayed_job"명령이 성공했습니다! 노동자가 시작했다. 그러나 문제가있다 : 나는 sudo를 시작 /etc/init.d/monit 실행하고 나는 syslog에 보면 난 아직도 'delayed_job'를 얻을 때 그래서 내가 조사하는 방법을 모르는
을 시작하지 못했습니다 더 자세한 방법, monit에 대한 자세한 오류를 얻는 방법.