设置专用的rails生产服务器

uma*_*mar 4 ruby stack production ruby-on-rails

我需要为Rails应用程序设置专用服务器.我不确定这是什么最好的方法.我需要一个可以在很多用户注册网站的情况下扩展的解决方案.我想这将是一个中等规模的应用程序.

以下是更具体的问题:

  • 操作系统可能是ubuntu 10.我应该去ubuntu 10.04还是10.10?
  • 我应该使用sudo安装ruby,因此应用程序的所有宝石,还是应该使用rvm?如果没有rvm安装的成本,我认为这将是首选,因为它具有更大的灵活性,但是使用rvm是生产服务器的一个很好的解决方案?我真的不知道这个
  • 我应该使用nginx/unicorn,nginx/passenger,apache/passenger,还是其他什么?
  • 我需要一个可扩展的数据库,所以postgres可能比mysql更好.或者我应该与其他东西一起去,或者在这里改变我的偏好?

一个相关的问题,虽然与这篇文章没有直接关系:我通常总是在系统范围内使用sudo安装一个ruby,并安装libssl等软件包,然后使用不带sudo的rvm安装其他软件包.这是正确的方法,还是我可以直接安装我需要的所有红宝石rvm没有安装在系统范围内?

Daz*_*win 6

我上周才处于同样的困境,我采取的解决方案是遵循Railscasts#335部署到VPS

Ryan Bates将指导您完成部署到VPS的棘手步骤,但我已部署到我在家中设置的专用服务器以了解部署过程.

他使用以下设置:

  • Ubuntu(10.04 LTS)
  • nginx(1.0.14)
  • 独角兽(4.2.0)
  • PostgreSQL(9.1.3)
  • 后缀
  • rbenv
  • rbenv安装程序
  • Capistrano的

就个人而言,我更适合MySQL,因此很容易用它代替PostgreSQL.我也使用过Ubuntu 12.04.

不可否认,我确实支付了5美元的订阅费.但说实话,其他教程也更深入地介绍了部署的棘手部分.他为您提供了源代码,并在其他方面提供了线索,例如优秀的工具(例如rbenv-installer).
这也让我使用rbenv而不是RVM,就像我之前使用的那样,到目前为止我没有遇到任何问题.

虽然我做了一件事,但不得不找到一些外部输入是独角兽,但这篇文章与Capistrano 上的Railscast一起帮助我确定了它.

祝好运