自动部署的最佳实践

时间:2017-05-03 18:38:02

标签: git web

我在BitBucket.org上有多个存储库。每次在本地计算机上运行git push时,我想在生产服务器上运行git pull。我一直在寻找最佳解决方案,但似乎有很多不同的解决方案。

有人说是网络挂钩,但它们对我来说似乎有点不安全。当然,您可以通过默默无闻来应用安全性,但我不确定这对于生产服务器是否真的足够安全。

我也可以设置一个git hook并推送到另一个遥控器。但我希望始终将其推向原点而不仅仅是生产服务器。

所以我的问题是,什么是自动部署的最佳实践, 无需SSH进入我的生产服务器,每次将内容推送到原点时都会进行更改?

1 个答案:

答案 0 :(得分:1)

你应该使用CI工具和git一起使用 - 你可以用纯git钩子实现你的目标,但我强烈建议反对。以下是使用SemaphoreCI设置通用工作流的方法:https://semaphoreci.com/docs/generic-deployment.html - 它们具有非常好的和初学者友好的文档,如果您对CI主题有疑问,则应该通过。

如果你有私人存储库(我猜你是因为你正在使用bb)而且你的预算有限,你可以使用http://codeship.comhttps://circleci.com/,因为他们有免费套餐。

如果您愿意离开bitbucket,您可以做的另一件事是使用https://gitlab.com/,然后您将使用无限制的构建集成CI,而无需任何成本。唯一的缺点是他们的UI有点过于复杂,所以有些事情起初可能会令人困惑,但他们的功能集是一个杀手。