无法让独角兽作为服务运行。当我打电话给#34; sudo service unicorn restart"时,我收到以下错误。
如果我打电话给' / var / www / mysite / bin / unicorn -D -c /var/www/mysite/config/unicorn.rb -E production'从应用程序的根目录,它运行得很好。我甚至可以打电话给#34; sudo service unicorn restart"之后就好了。
非常感谢任何帮助!
ubuntu@ip:$ sudo service unicorn restart
Couldn't reload, starting '/var/www/mysite/bin/unicorn -D -c /var/www/mysite/config/unicorn.rb -E production' instead
/usr/bin/env: ruby: No such file or directory
这里是终端输出,显示系统使用的红宝石。
ubuntu@ip:$ which ruby
/home/ubuntu/.rbenv/shims/ruby
我在Ubuntu 12.04上运行。 Rails 4,Ruby 2.1和nginx
答案 0 :(得分:2)
我有同样的问题,但我在每个用户的基础上使用rbenv。 我使用了init script
我发现自从我的rbenv按用户安装后,我需要稍微改变一下:
CMD="cd $APP_ROOT; bundle exec unicorn -D -c $APP_ROOT/config/unicorn.rb -E production"
用这个:
CMD="cd $APP_ROOT; ~/.rbenv/bin/rbenv exec bundle exec unicorn -D -c $APP_ROOT/config/unicorn.rb -E production"
希望它会对你有所帮助!
答案 1 :(得分:1)
您的问题是您的rbenv安装仅为ubuntu用户加载,但您以root身份运行独角兽。
您可能希望为root用户安装rbenv,或者全局安装。