多台服务器集群, 如何使用git自动部署代码
我们用git托管代码, 线上有多台服务器, 求代码自动部署同步所有服务器的方法;
希望提供较详细的方案信息, 谢谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我们用git托管代码, 线上有多台服务器, 求代码自动部署同步所有服务器的方法;
希望提供较详细的方案信息, 谢谢!
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(6)
不要这样部署代码,靠git pull不能保证同步,而且有台机器pull没成功怎么办。建议单独一台部署机,pull代码,增量同步到服务器,可以用ansible
首先,想知道你是把origin裸库布置在线上的某台服务器上,还是把线上的这些服务器都当做从origin克隆代码的客户端。
其次,线上的服务器可以做这么几件事来实现自动化部署:1. 给git增加增加钩子动作,每次git在完成某项动作是,可以通过该钩子附带执行对应的动作;2. 利用linux的corntab和shell脚本,定时执行一些检查,或者定时执行一些git更新;3. 还是利用2中的方法,定期对文件进行同步,也就是楼上说的sync。
这是我的思路。
rsync服务器文件同步
期中的一台服务器你用git部署了,其他服务器都是单向rsync同步当前机器即可
用Capistrano
teamcity 或 jenkins自动构建工具,再写脚本把构建好的文件上传到各台机器上。