美文网首页
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