美文网首页
nodejs的多服务器自动化部署(基于码云)

nodejs的多服务器自动化部署(基于码云)

作者: 半夏半暖半倾城灬 | 来源:发表于2018-01-26 16:50 被阅读0次

为了使日常开发的过程更加优雅,开发一段代码后不再需要打开ssh,一台一台服务器的拉代码,执行脚本,重启服务器,我开始了自动化部署之路,这里写下过程备忘,同时给有同样问题的朋友一些参照,欢迎拍砖,给予建设性建议。

整体思路如下:

1.把每台服务器的公钥添加到码云(或gitlab、github等),使服务器能正常拉取git代码;

2.实现hook的路由,根据远程git事件传送过来的内容执行拉取代码的shell脚本(node项目用pm2管理,pm2 start www --watch 监控文件改变则重启项目)

3.通过git 指令clone项目到各服务器运行

4.gitlab、github、码云等git管理页面配置webhook(可以监测git仓库的事件如tag或内容的push,然后将事件内容post到固定url),可增加多个(根据服务器个数);

5.随便提交代码到git管理平台(如码云、gitlab、github),git管理平台hook监测到push事件,推送消息到实现的hook接口,各服务器通过hook接口判断后,执行shell脚本拉取代码,pm2监测到文件变化重启项目,对应所有服务器完成更新,可正常访问。

相关文章

网友评论

      本文标题:nodejs的多服务器自动化部署(基于码云)

      本文链接:https://www.haomeiwen.com/subject/yhdwaxtx.html