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的当部署失败,这导致了很多混乱和浪费的时间来调试并没有显示具体的故障错误。

希望我的答案能帮助其他人,如果他们得到类似的错误并节省大量的时间。 :)