使用capistrano从不同的机器

时间:2015-12-19 11:48:29

标签: ruby-on-rails deployment capistrano3

我们有一个由2人组成的团队编写Rails应用程序。我们使用DigitalOcean作为VPS和capistrano来部署它。

但是capistrano部署脚本只在我们两台机器中的一台上。

是否可以在第二台机器上设置capistrano以从中部署同一个项目?如果是的话,这是怎么回事?

P.S。这可能非常简单,例如添加一些SSH密钥并从第二台计算机运行cap production deploy,因为远程VPS已设置整个基础架构。但我们不能承担生产系统的风险。

1 个答案:

答案 0 :(得分:2)

有几种方法可以做到这一点:

  • 将您的Cap脚本与代码一起提交到存储库(这是我倾向于这样做的;它适用于Ruby on Rails,配置结构匹配)。任何想要部署的人都需要在服务器上设置SSH密钥。
  • 使用部署脚本创建另一个存储库;与上面类似,你需要SSH密钥。
  • 使用CI服务器进行部署。
  • 想出其他更深奥的东西。 Capistrano非常灵活。

在我工作的地方,我们通常只是将Capistrano添加到Rails应用程序的Gemfile中,任何检查它的人都可以将它部署到他们有权访问的任何服务器上。为此,将开发人员SSH密钥添加到服务器中。

祝你好运!