RVM和Unicorn部署

Kir*_*Kir 7 unicorn rvm ruby-on-rails-3

我的RVM以root用户身份安装.当我试图启动独角兽插座时,它会打印出来

user@9001-3:~$ /etc/init.d/unicorn start
Starting myapp app: /usr/bin/env: ruby: No such file or directory
unicorn.
Run Code Online (Sandbox Code Playgroud)

但如果我输入

user@9001-3:~$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-linux]
Run Code Online (Sandbox Code Playgroud)

/usr/local/rvm/gems/ruby-1.9.2-p180/bin/unicorn 路径存在.

我的独角兽配置:https://gist.github.com/1010519

Mic*_*ley 10

/etc/init.d/unicorn不知道在哪里找到Ruby,因为它是通过RVM管理的.通常,.bashrc执行您或类似的文件并设置环境; 这不会发生在init脚本中(或者可能是root执行的任何其他操作).

解决方案是使用包装器.例如,要创建一个称为system_ruby加载RVM的1.9.2p180环境然后执行的二进制文件ruby,请执行以下命令:

rvm wrapper ruby-1.9.2-p180 system ruby
Run Code Online (Sandbox Code Playgroud)

有关更多信息和更多详细信息,请查看我的这个答案,它解决了类似的问题.