使用gitlab自动部署
我们办公室的ubuntu服务器上运行着Gitlab服务器。我正在使用来自每个repo的post-receive钩子进行自动部署。这就是我所做的使用gitlab自动部署,git,deployment,nginx,gitlab,ubuntu-server,Git,Deployment,Nginx,Gitlab,Ubuntu Server,我们办公室的ubuntu服务器上运行着Gitlab服务器。我正在使用来自每个repo的post-receive钩子进行自动部署。这就是我所做的 我在post-receive文件中编写了shell脚本,将代码从gitlab服务器推送到实际的生产服务器 因此,我们的gitlab服务器中的所有repo都有post-receive钩子来进行自动部署 我在生产服务器中安装了git bare repo以接收代码gitlab server 在生产服务器的裸repo中,我编写了另一个post-receive钩子
GIT\u-WORK\u树部署代码,并在相同的post-receive钩子中重新启动nginx服务器
push to master branch
我们的生产服务器应该更新。我将尝试使用Gitlab_CI,但我想知道是否还有其他工具可以这样做。编辑:对于,如果您具有文件系统访问权限,不使用挂钩的旧理由不再适用。但是,我仍然建议使用CI,因为它是:
- 更易于维护,特别是使用
.yaml
- 与存储库更为隔离,因此不太可能分解内容
- 它们在所有回购协议中共享
- 当您更新gitlab shell时,它们可能会生成合并冲突
- 它们是gitlab的安全关键,触碰它们会让您面临漏洞
如果您有更具体的需求,可能会有一个服务可以满足您的需求:,但我将把它留给另一个更具体的问题 对我的自动部署有用吗?@niren我从未接触过ansible,所以我不知道=(