0

我有一个带有 rails(rvm) + nginx + Thin 的 ubuntu 服务器。

Nginx 正在监听 porst 3000-3 并且如果我手动启动 rails 效果很好,所以我猜问题出在薄。

我已将瘦配置为在端口 3000,3001,3002 中启动 3 个服务器实例,但它们不会启动并且不会报告任何错误。

我在 /etc/thin 中只有一个文件,这是正常的还是我遗漏了什么?该文件是 railsapp.yml。

如果我运行 bundle exec thin start,它运行正常。

编辑:运行时出现错误:

thin start --all /etc/thin

这是日志中的错误:

/home/metaloviana/.rvm/gems/ruby-1.9.2-p318@global/gems/bundler-1.1.3/lib/bundler/runtime.rb:31:in `block in setup': You have already activated rack 1.4.1, but your Gemfile requires rack 1.3.5. Using bundle exec may solve this. (Gem::LoadError)

编辑2:

问题解决了。使用 railsgems-bundler 和 rvm 包装器。

多谢你们!

4

1 回答 1

2

同意@shime。

错误日志表明 ruby​​gem 发现了许多不同版本的 rake,它不知道要使用哪个版本。

请记住,始终使用“bundle exec”来执行 rake 任务,例如

bundle exec thin start 
bundle exec rake db:migrate
bundle exec rspec spec
bundle exec rails generate scaffold...
于 2012-04-13T00:17:19.033 回答