我们有在我们的办公室在Ubuntu服务器上运行的Gitlab服务器。 我正在做自动部署使用后从每个回购钩。 这就是我所做的,
GIT_WORK_TREE
并重新启动nginx服务器在相同的post-receive钩子。 现在我想通过现有的标准工具进行自动部署,因为使用这种部署方式,我需要configuration所有的回购,这样会花费很多时间。 有什么其他的方式来做这个自动部署。
生产服务器 :ubuntu 14.04LTS, 生产 Web 服务器 :nginx, 本地git服务器 :gitlab。
更新:我现在想这样做,因为我有问题与@Ciro Santilli解释的gitlabshell。 而我也做git push production
@Ciro桑蒂利答案的链接后,我有问题与gitlabshell提到。 但是我想要做的就是Gitlab_CI所做的, push to master branch
我们的生产服务器应该被更新。 我会尝试与Gitlab_CI,但我想知道有没有其他工具可以做同样的事情。
编辑:与自定义挂钩功能 ,旧的理由给不使用挂钩不适用了,如果你有文件系统访问。 不过,我仍然建议使用CI,因为它是:
.yaml
配置 在“自定义挂钩”功能之前不使用挂钩的原因:
就像在Gitlab存储库镜像中所讨论的一样
除非你指定更多关于你的部署而不是你想用Git来完成,否则没有任何GitLab具体说明它,答案将与通用Git问题相同: 使用Git push部署项目
如果你有更具体的要求,可能会有一个服务,你想要什么: https : //github.com/gitlabhq/gitlabhq/tree/d7c50b4a95b5530ae0e2f5249cfd9a419dd940c6/app/models/project_services ,但我会离开这另一个更具体的问题。