发布Rails应用程序的最佳方式

问题描述:

虽然Rails和PHP有不同的部署方法,但发布FOSS Rails应用程序的最佳方式是什么?假设一个主要的PHP应用程序 - Magento,Drupal,Wordpress是建立在RoR之上的,那么他们分发他们的应用程序的最佳方式是什么?发布Rails应用程序的最佳方式

将代码打包成一个宝石似乎是一个完整的开箱即用应用程序的错误方法,但我可能是错的。

来自PHP世界的上下左右的方法,作为Rails的新手,目前看到代码如何能够轻松有效地分布是相当不透明的。

+0

您可以在许多托管服务提供商上载并使用Rails,但是在Rails社区中,许多人花时间在VPS或其他解决方案上设置服务器。将源代码作为档案分发的潜在缺点是什么? –

+0

@Devin M通过归档,你的意思是作为一个宝石或压缩档案? – Matty

+0

作为'.zip'或'.tar.gz' –

将完整的Rails应用程序作为宝石包装可能是错误的方法。我认为最好的解决方案是提供对git仓库或git仓库tarball的访问。

如果您想为用户提供超过rake db:schema:load的设置来设置您的应用程序,创建自定义设置命令非常简单。

+0

我喜欢这个想法。你能指点我一些文档,这将帮助我了解设置这些自定义命令吗? – Matty

+0

http://jasonseifer.com/2010/04/06/rake-tutorial –

那么,通常Rails应用程序运行在运行Apache + Passenger(又名mod_rails)的环境中。

部署很容易与Capistrano宝石完成。

当您在共享主机环境中运行Rails应用程序时,他们通常使用fcgi/cgi调度程序来运行Ruby。

许多应用程序与源代码一起打包,就像典型的PHP应用程序一样。虽然部署Rails应用程序可能看起来很困难,但预计用户将知道如何根据其环境和需求正确设置服务器。您需要担心的唯一问题是分发代码,设置服务器不是您想要帮助的域。

有关在Rails中部署的信息,您应该看到部署页面here