使用Capistrano部署在rbenv上启动Unicorn时,RAILS_ROOT不正确

时间:2013-09-01 00:27:46

标签: ruby-on-rails ruby capistrano unicorn rbenv

MyApp的设置使用: Ubuntu的 rbenv 红宝石2.0 rails 4.0 独角兽 Capistrano的

使用Capistrano的部署策略,我的应用程序的路径是/ srv / www / my_app / current / 我希望RAILS_ROOT是一样的。

当我登录到我的远程服务器时,我在该路径中,然后运行:

unicorn_rails -c /srv/www/my_app/current/config/unicorn.rb -D

我在unicorn.stderror.log中收到以下错误:

/home/ubuntu/.rbenv/versions/2.0.0-p247/bin/unicorn_rails must be run inside RAILS_ROOT: #<LoadError: cannot load such file -- /srv/www/my_app/config/boot>

我已经尝试过各种各样的东西来设置RAILS_ROOT,没有运气。

  1. 我认为RAI​​LS_ROOT实际上是Rails.root现在
  2. 我看到有人发帖说它应该在boot.rb中定义,但这意味着上面的加载错误是找到boot.rb然后抱怨它找不到它。

1 个答案:

答案 0 :(得分:1)

根据Deefour的评论,我从使用unicorn_rails切换到unicorn可执行文件。