如何在Azure Ubuntu虚拟机中部署rails-app+postgreSQL



我有一个Azure订阅处于活动状态,我想将我的rails应用程序从Heroku迁移到Azure,但它真的让我不知所措,我真的不知道该怎么做。

我想要的是以下内容:

  • 将我的rails应用程序(REST Web服务API+静态主页)从Heroku移动到Azure
  • 使用postgreSQL数据库(尽管我对其他人开放,但这是我在Heroku中使用的数据库)
  • 使用git进行连续部署。在heroku中,我可以"git-push heroku master",它会自动停止、更新并重新启动服务器。这也是我想在Azure中实现的

在熟悉Azure门户之后,脑海中浮现出许多疑问。

  • 我需要创建一个安装了Ubuntu服务器的虚拟机并安装rails、ruby、git等吗?(已完成)

  • 每次更新服务器时,我是否需要从服务器控制台手动从主存储库中提取最新代码并重新启动服务器?

  • 我需要创建虚拟网络吗?

  • 我需要在Azure中创建SQL服务器吗?还是可以像往常一样在VM中使用gem-postgresql?

事先谢谢你,我真的是Azure的新手。肯定比Heroku复杂得多。如果有人能为我指明正确的方向,告诉我应该使用什么样的基础设施以及如何设置,我将不胜感激。

干杯!

不幸的是,Ruby on Rails不支持作为Azure Web应用程序平台,但您可以选择创建虚拟机。Heroku是一个PAAS平台,而Azure是PAAS和IAAS平台,但Azure PAAS还不支持Ruby,Postgres也还不能作为PAAS服务提供。

•我需要创建一个安装了Ubuntu服务器的虚拟机并安装在那里的rails、ruby、git等吗?(已完成)回答-这是正确的做法。

•每次更新服务器时,我是否需要从服务器控制台手动从主存储库中提取最新代码并重新启动服务器?答案-使用任何连续部署工具或使用Git挂钩-http://do.co/1PTwVwo按照这个链接为您的虚拟机设置git挂钩。

•我需要创建虚拟网络吗?答:是的,你应该这样做,事实上,如果你使用相同的资源组、相同的位置和所有东西,它会开箱即用。

•我需要在Azure中创建SQL服务器吗?还是可以像往常一样在VM中使用gem-postgresql?答:如果你可以使用SQL server,因为它可以作为PAAS服务,但对于Postgres,你必须创建自己的VM,你可以选择使用ARM模板来部署完整的Postgres主从复制https://github.com/Azure/azure-quickstart-templates/tree/master/postgresql-on-ubuntu

在推特上与我联系,进一步讨论@brijrajsingh

最新更新