我一直在玩一个rails应用程序,并通过在heroku上部署它来向客户展示更新。现在,客户希望它在服务器上设置...作为实时网站。
Heroku部署了rails应用程序非常简单,以至于无法在服务器上从头开始包裹我的头。
对于经验丰富的rails开发人员,需要做什么才能做到这一点?我的应用程序使用postgresql,服务器是linux服务器。客户声称他们已在服务器上安装了rails。
我是否只需要安装postgresql ...创建数据库...运行迁移和瞧?或者还有其他涉及的东西。到目前为止,我正在使用database.yml的开发部分...现在它将进行生产?
请提供一些解释该过程的指示和/或链接。
答案 0 :(得分:1)
我认为capistrano网页上有一个很好的操作指南,可以从哪里开始。
答案 1 :(得分:1)
好吧,想一想:rails应用程序需要什么?
如果您使用RAILS_ENV环境变量并将其设置为生产,则无需担心后续步骤,否则请记住生产环境!
您可以使用rake db:schema:load来设置数据库,然后..确保它在启动时自动加载,确保您拥有所需的任何预加载数据,确保它可以从外部或从任何地方访问需要访问它。
我不知道你的rails应用程序还有什么需要 - 当然,Capistrano是一个好主意,可以帮助你维护应用程序:)
答案 2 :(得分:1)
您可能需要先决定使用哪种服务器软件,因为这不是Heroku给您做出的决定。无论如何,这很容易,因为Phusion Passenger现在是Rails世界中的默认选择。 Passenger很容易设置 - 它可能是我见过的最好的命令行安装程序 - 并且文档非常好。
Slicehost有一系列文章,涵盖了为各种Linux版本设置所需的各种内容。他们真的很棒:
http://articles.slicehost.com/search?q=rails
您还需要了解如何使用Capistrano,这是大多数人用来部署Rails应用程序的。
答案 3 :(得分:0)
您是否有理由不能将Heroku用作生产环境?
编辑:
如果他们正在运行php网络服务器,他们可能已经拥有一台正常运行的apache服务器。如果是这种情况,您应该查看安装passenger并设置新数据库。
此时您可以自行复制应用程序,运行rake任务以完成所有设置,然后高枕无忧,或者您可以花时间学习如何使用capistrano以便可以重复部署应用程序。
我建议后者... capistrano真的不是那么棘手,假设您的应用程序设置相对合理,默认值应该让你在那里90%。