我正在努力让Foreman使用我的Unicorn设置。
这是我的Procfile:
web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
这是我启动Foreman时的输出:
10:41:37 web.1 | started with pid 19300
10:41:38 web.1 | /Users/seth/.rvm/gems/ruby-1.9.2-p136/gems/bundler-1.1.4/lib/bundler/shared_helpers.rb:2:in `require': no such file to load -- rubygems (LoadError)
10:41:38 web.1 | process terminated
10:41:38 web.1 | from /Users/seth/.rvm/gems/ruby-1.9.2-p136/gems/bundler-1.1.4/lib/bundler/shared_helpers.rb:2
10:41:38 system | sending SIGTERM to all processes
10:41:38 web.1 | from /Users/seth/.rvm/gems/ruby-1.9.2-p136/gems/bundler-1.1.4/lib/bundler/setup.rb:1:in
它失败了:
require 'rubygems'
更新:通过运行 ruby --version 进行快速健全性检查后,我意识到我实际上正在运行1.8.7。出于某种原因,运行 rvm后,使用--default 1.9.2-p136 ,甚至在我关闭终端窗口后,新安装的1.9.2-p320也不会保留。它总是恢复到1.8.7。
所以我现在能够开始领班但是当我关闭那个终端并回来时我又回到了1.8.7,有什么想法吗?
答案 0 :(得分:0)
移动这一行:
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
在我的.profile的底部为我修复它。这帮助了我:Why doesn't "RVM --default" work for me on MacOSX?
答案 1 :(得分:0)
您需要运行登录会话以使RVM以交互模式运行 - 例如:https://rvm.io/integration/gnome-terminal/或https://rvm.io/workflow/screen/
但是要在脚本中使用RVM,您应该阅读:https://rvm.io/integration/cron/