如何一鍵部署項目&&代碼自動更新

my-deploy : 由nodejs寫的一個自動更新工具,理論支持全部語言(php、java、c#)的項目,支持全部git倉庫(bitbucket、github等)。php

Githubhtml

效果如何?

  • 若是你的後端項目放在github、bitbucket等git倉庫中管理 , 在你的服務器中配置好mydeploy,它會根據你的配置,自動檢查是否須要拉取最新代碼 , 而且自動幫助你更新。

支持方式

  1. webhook
    你須要在你的倉庫的webhook中設置你的服務器地址+端口,my-deploy接收到倉庫的請求,會監測commit和tag,看是否須要拉取代碼,若是須要,獲取最新代碼,此時藉助pm2等能夠達到自動更新重啓的效果。

配置文件:java

{
     "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"
        }
    ]
}
  1. pullwatch
    設置好my-deploy的拉取間隔時間,它會按期獲取項目是否須要更新,並做出相關更新工做。

配置文件:node

{
     "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"
        }
    ]
 }

視頻演示git

總結

簡單、方便的部署,讓你解放服務器的代碼更新,專心寫代碼,直接push,服務端自動更新。能夠由commit的信息中區分該提交是否須要更新的,靈活控制。github

該工具結合docker和集羣效果更佳,更好玩。歡迎star , fork!謝謝web

相關文章
相關標籤/搜索