2015-04-17 84 views
1

我使用capistrano 3.2.1與capistrano-resque gem重新啓動部署時的rasque工作人員。總是得到這個錯誤。與capistrano部署Rails並啓動resque工作人員

如果我在生產服務器上的當前目錄下手動啓動工作器,它會正常啓動。

cd /home/azureuser/apps/app_production/current && (RBENV_ROOT=~/.rbenv RBENV_VERSION=2.1.1 /usr/bin/env nohup RBENV_ROOT=~/.rbenv RBENV_VERSION=2.1.1 ~/.rbenv/bin/rbenv exec bundle exec rake RACK_ENV=production RAILS_ENV=production QUEUE="mailer" PIDFILE=/home/azureuser/apps/app_production/shared/tmp/pids/resque_work_1.pid BACKGROUND=yes VERBOSE=1 INTERVAL=5 environment resque:work >> log/resque.log 2>> log/resque.log) 
cap aborted! 
SSHKit::Runner::ExecuteError: Exception while executing as [email protected]: nohup exit status: 127 
nohup stdout: Nothing written 
nohup stderr: Nothing written 
/Library/Ruby/Gems/2.0.0/gems/sshkit-1.7.1/lib/sshkit/runners/parallel.rb:16:in `rescue in block (2 levels) in execute' 
/Library/Ruby/Gems/2.0.0/gems/sshkit-1.7.1/lib/sshkit/runners/parallel.rb:12:in `block (2 levels) in execute' 
SSHKit::Command::Failed: nohup exit status: 127 
+0

什麼被寫入到'應用程序/ app_production /電流/ log/resque.log'何時失敗? –

+0

ohup:無法運行命令'RBENV_ROOT =/home/azureuser/.rbenv':沒有這樣的文件或目錄。這是錯誤日誌。 – MadNik

+0

如果我檢查'哪個rbenv'記錄'/home/azureuser/.rbenv/bin/rbenv' – MadNik

回答

0

我摸索出Capistrano的-rbenv是問題之後,我刪除了寶石從我的Gemfile,也是我capfile。

然後我就添加了下面我deploy.rb文件:

set :default_env, { 
    PATH: "$HOME/.rbenv/shims:$HOME/.rbenv/bin:$PATH", 
    RBENV_ROOT: '~/.rbenv', 
    RBENV_VERSION: '2.2.2' 
} 

現在Capistrano的-resque正常工作一樣麒麟等。