- 摘要:my-deploy:由nodejs写的一个自动更新工具,理论支持所有语言(php、java、c#)的项目,支持所有git仓库(bitbucket、github等)。github效果如何?如果你的后端项目放在github、bitbucket等git仓库中管理,在你的服务器中配置好mydeploy,它会根据你的配置,自动检查是否需要拉取最新代码,并且自动帮助你更新。支持方式webhook你需要在你的仓库的webhook中设置你的服务器地址+端口,my-deploy接收到仓库的请求
-
my-deploy : 由nodejs写的一个自动更新工具,理论支持所有语言(php、java、c#)的项目,支持所有git仓库(bitbucket、github等)。
github
效果如何?
如果你的后端项目放在github、bitbucket等git仓库中管理 , 在你的服务器中配置好mydeploy,它会根据你的配置,自动检查是否需要拉取最新代码 , 并且自动帮助你更新。
支持方式
webhook
你需要在你的仓库的webhook中设置你的服务器地址+端口,my-deploy接收到仓库的请求,会监测commit和tag,看是否需要拉取代码,如果需要,获取最新代码,此时借助pm2等可以达到自动更新重启的效果。配置文件:
{ "mode": "webhook", "url": "your project url of git use http", "localdir": "/path/of/your/local/project", "branch": "master", "port":"3100" "rules": [ { "type": "tag", "value": "[vV]//d+" }, { "type": "commit", "value": "#[//s//S]*?deploy//s*[//s//S]*?77" } ] }
pullwatch
设置好my-deploy的拉取间隔时间,它会定期获取项目是否需要更新,并作出相关更新工作。配置文件:
{ "mode": "pullwatch", "url": "your url of git use http", "localdir": "/path/of/your/local/project", "interval": 3000, "branch": "master", "rules": [ { "type": "tag", "value": "[vV]//d+" }, { "type": "commit", "value": "#[//s//S]*?deploy//s*[//s//S]*?77" } ] }
视频演示
总结简单、方便的部署,让你解放服务器的代码更新,专心写代码,直接push,服务端自动更新。可以由commit的信息中区分该提交是否需要更新的,灵活控制。
该工具结合docker和集群效果更佳,更好玩。欢迎star , fork!谢谢
转载于:https://my.oschina.net/8824/blog/2964268