部署在Heroku上与Capistrano的?(Deploying on Heroku with C

2019-07-01 17:02发布

我还是习惯了Rails的开发生态系统。 最近我学会了如何使用Capistrano的部署使用Apache和乘客我的服务器,我爱我怎么可以把一个相当复杂的部署说明了我的deploy.rb使它们与一个单一的“帽部署”呼叫执行,有自动回滚,如果有什么差错。

现在,我寻找到在Heroku上部署我的项目,我希望能够使用Capistrano的我的部署在那里。 但我一直无法找到如何做到这一点的任何文档。 可能吗? 是让我在Heroku自动化部署有Capistrano的任务是什么?

这是否甚至有意义吗? 毕竟Capistrano的工作在一个特定的方式(SSH到服务器),并假定一个特定的目录结构(公共/发布/共享等)。 这两者都是不可能的Heroku,据我所知。 但我仍想有Capistrano的方便。 我知道我可以把所需的步骤为我的部署(混帐推/迁移/重新启动resque工人...)集成到一个rake任务,我也有一个单一的命令拨打电话部署的方便性; 但我不会有Capistrano的交易和回滚,这是在我的脑海里非常重要的好处。

我可能失去了一些东西有关如何将这些技术结合在一起非常基本的。 我很惊讶了一下我一直没能找到任何关于这一问题的讨论的任何地方。 任何人都可以分享他们的经验?

Answer 1:

Heroku的使用Git的部署,而不是Capistrano的友好。 事实上,哲学本身是不同的 - Heroku上没有“服务器”在这里你可以ssh,或者定制服务器您的需要。

Heroku的使用DYNOS,这是预定义的情况下,以覆盖广大的Rails开发需求的具体部署架构。 你可以像Heroku的回滚,备份,迁移等,在某些情况下的行动,比正常Capistrano的脚本更复杂。

除非你的设置是完全不同的,你可以放心地使用Heroku的Rails的(与唯一的Git,当然)。 如果不是,AWS是更好的选择。



文章来源: Deploying on Heroku with Capistrano?