84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
我们用git托管代码, 线上有多台服务器, 求代码自动部署同步所有服务器的方法;
希望提供较详细的方案信息, 谢谢!
不要这样部署代码,靠git pull不能保证同步,而且有台机器pull没成功怎么办。建议单独一台部署机,pull代码,增量同步到服务器,可以用ansible
首先,想知道你是把origin裸库布置在线上的某台服务器上,还是把线上的这些服务器都当做从origin克隆代码的客户端。其次,线上的服务器可以做这么几件事来实现自动化部署:1. 给git增加增加钩子动作,每次git在完成某项动作是,可以通过该钩子附带执行对应的动作;2. 利用linux的corntab和shell脚本,定时执行一些检查,或者定时执行一些git更新;3. 还是利用2中的方法,定期对文件进行同步,也就是楼上说的sync。这是我的思路。
rsync服务器文件同步
期中的一台服务器你用git部署了,其他服务器都是单向rsync同步当前机器即可
用Capistrano
teamcity 或 jenkins自动构建工具,再写脚本把构建好的文件上传到各台机器上。
不要这样部署代码,靠git pull不能保证同步,而且有台机器pull没成功怎么办。建议单独一台部署机,pull代码,增量同步到服务器,可以用ansible
首先,想知道你是把origin裸库布置在线上的某台服务器上,还是把线上的这些服务器都当做从origin克隆代码的客户端。
其次,线上的服务器可以做这么几件事来实现自动化部署:1. 给git增加增加钩子动作,每次git在完成某项动作是,可以通过该钩子附带执行对应的动作;2. 利用linux的corntab和shell脚本,定时执行一些检查,或者定时执行一些git更新;3. 还是利用2中的方法,定期对文件进行同步,也就是楼上说的sync。
这是我的思路。
rsync服务器文件同步
期中的一台服务器你用git部署了,其他服务器都是单向rsync同步当前机器即可
用Capistrano
teamcity 或 jenkins自动构建工具,再写脚本把构建好的文件上传到各台机器上。