为非技术人员分发可执行的Rails应用程序以在服务器上安装

时间:2013-01-17 18:22:19

标签: ruby-on-rails jruby software-distribution

我知道一个similar question has already been posed on StackOverflow,但它是在四年半前提出的,我想知道是否有比答案中提供的更新的解决方案(特别是考虑到一些提到的项目似乎被封存了。)

简而言之,我正在使用Ruby on Rails 3.2.6和PostgreSQL开发一个小型的内部社交网络应用程序。目前,该应用程序托管在VPS(Ubuntu)上。该应用程序几乎是一个“标准”应用程序,但依赖于ImageMagick和FFMPEG库。此外,每个工作人员在系统上都有一个帐户,因此可以从他们自己的PC远程上传数据。

在没有详细介绍的情况下,该应用程序运行良好,以至于某些联系人询问他们是否可以在自己的服务器上使用该应用程序的版本。

显而易见的(我认为)解决方案是在GitHub上公开源代码,并鼓励我们的联系人克隆应用程序并将其部署到自己的服务器上。但是,这种方法存在各种各样的问题,特别是我们的大多数联系人在技术上都不够熟练,无法安装正确版本的Ruby,Rails,PostgreSQL等,并且如果这些依赖项安装不正确,则调试内容

作为替代方案,我们正在考虑创建一个可分发的“空白”(即数据库中没有内容 - 除了管理员帐户之外)版本的应用程序,我们的联系人只需要设置,比如说,一个Ubuntu服务器,双击可执行文件,嘿,presto,应用程序可以在自己的服务器上供自己的员工访问。

所以,我的问题是 - 这里最合适的解决方案是什么? A recent post建议Warbler(我正在考虑JRuby),但是我对这个gem是否只允许创建独立的Rails应用程序(即随后只能用于单人的PC)或可以托管在服务器上并由更多人访问的应用程序。此外,应用程序必须通过相关宝石访问ImageMagick和FFMPEG库 - 我不确定这是否会影响任何决策。

我意识到这是一个非常开放的问题,因此可能没有任何简单的解决方案,但任何反馈都会有所帮助。

谢谢!

1 个答案:

答案 0 :(得分:2)

我不确定您提供的某些链接是否已提及但另一个选项是分发您的客户可以在虚拟机中加载的图像(所有内容都已正确安装)。这是GitHub Enterprise采用的方法。