我们的Gitlab服务器在我们的办公室运行在ubuntu服务器上。我正在使用每个回购的后接收挂钩进行自动部署。这就是我所做的,使用gitlab自动部署
- 我在post-receive文件中写了shell脚本,将代码从gitlab服务器推送到我们的实际生产服务器。
- 因此,我们的gitlab服务器中的所有回购都有post-receive hook来进行自动部署。
- 我在生产服务器上安装了git bare repo来接收代码gitlab服务器。
- 在生产服务器的裸回购中,我编写了另一个post-receive hook来部署使用
GIT_WORK_TREE
的代码,并在相同的post-receive钩子中重新启动nginx服务器。
现在我想通过现有的标准工具进行自动部署,因为使用这种部署方式,我需要配置所有的回购,因此它会花费很多时间。有什么其他的方法来做这个自动部署。
生产服务器:Ubuntu的14.04LTS, 生产网络服务器:nginx的, 本地的Git服务器:gitlab。
更新:我想这样做,因为我有问题与@Ciro Santilli解释的gitlab外壳。我也在做git push production
作为@Ciro桑蒂利答案的链接后提到,我有问题与gitlab外壳。但是我想要做的就是Gitlab_CI,push to master branch
我们的生产服务器应该更新。我会尝试使用Gitlab_CI,但我想知道是否有任何其他工具可以做到这一点。
Gitlab_CI不错,我会试一次。 – niren 2014-11-03 20:30:30
将[ansible](http://www.ansible.com/application-deployment)用于我的自动部署? – niren 2014-11-05 07:21:33
@niren我从来没有碰过任何人,所以我不知道=( – 2014-11-05 08:20:11