如何将heroku rails应用程序迁移到新主机上的同一个应用程序?

时间:2012-03-04 16:11:23

标签: ruby-on-rails redirect heroku

我需要将我的rails应用程序从Heroku切换到我在Linode上的新主机。 我需要解决以下问题,并希望得到一些建议

1)如何将数据从Heroku迁移到我的新Linode主机?

2)如何将Heroku域名从myapp.herokuapp.com重定向到my_new_host.com?

我需要尽可能同时实现上述目标,以便不丢失新数据

1 个答案:

答案 0 :(得分:3)

  1. 假设您在Linode主机上运行PostGres,那么您只需要备份Heroku,然后将其恢复为Heroku(pgbackups)。还有其他选项 - 您可以使用heroku db:pull将其从Heroku下载到本地数据库,然后转移到Linode。另一个选择是使用linode服务器上的Heroku gem将数据直接从heroku应用程序提取到linode数据库。

  2. 您只能使用代码重定向Heroku,因此您必须将执行重定向(rack_rewrite)的应用推送到新主机。

  3. 您需要将Heroku上的应用程序置于Heroku的维护模式。通过您选择的机制执行数据传输。然后将“重定向”代码部署到Heroku应用程序,然后在Heroku上关闭维护模式。然后,访问herokuapp.com地址的访问者将被重定向到新URL上运行的应用程序。