繁体   English   中英

Rails Unicorn初始化脚本未执行。 说找不到Ruby

[英]Rails Unicorn init script not executing. Says Ruby can't be found

无法让独角兽作为服务运行。 当我调用“ sudo服务独角兽重启”时,出现以下错误。

如果我从应用程序的根目录中调用“ / var / www / mysite / bin / unicorn -D -c /var/www/mysite/config/unicorn.rb -E production”,它将运行良好。 在那之后,我什至可以叫“ sudo服务独角兽重启”。

任何帮助深表感谢!

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

我遇到了同样的问题,但是我正在使用按用户安装的rbenv。 我用了这个初始化脚本

我发现由于我的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"

希望对您有帮助!

您的问题是您的rbenv安装仅为ubuntu用户加载,但您以root身份运行unicorn。

您可能要为root用户安装rbenv,或在全局安装它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM