0

我使用麒麟,和Capistrano的在軌部署到服務器....Capistrano的Depolyment失敗:/etc/init.d/unicorn:第42行:RVM-shell命令沒有找到

但在部署的最後一步。 Capistrano的存在了與此錯誤:

INFO [47010f4f] Running /usr/bin/env service unicorn_app restart on xyzdomain.com 
DEBUG [47010f4f] Command: service unicorn_app restart 
DEBUG [47010f4f] Couldn't reload, starting 'cd /var/www/app/current; rvm-shell 'default' -c 'bundle exec unicorn -D -c /var/www/app/shared/config/unicorn.rb -E staging'' instead 
DEBUG [47010f4f]  
DEBUG [47010f4f] /etc/init.d/unicorn_app: line 42: rvm-shell: command not found 
DEBUG [47010f4f]  
cap aborted! 

當我從服務器上運行的終端RVM-shell命令,它運行沒有錯誤。

注意:rvm-shell安裝在〜/ .rvm/bin中。所以它不是這裏提到的錯誤:https://github.com/capistrano/capistrano/issues/43

任何想法爲什麼會發生這種情況?

在此先感謝

回答

0

解決了這個問題:

它實際上是在服務器上的一些權限問題

當我執行命令,直接Server上失敗,它產生了一些目錄權限錯誤。我通過手動創建這些目錄來解決它們。

cd /var/www/app/shared 
mkdir pids 
mkdir logs 

奇怪Capistrano的當部署失敗,這導致了很多混亂和浪費的時間來調試並沒有顯示具體的故障錯誤。

希望我的答案能幫助其他人,如果他們得到類似的錯誤並節省大量的時間。 :)