1
發佈nodejs web應用程序的正確方法是什麼?通過提出發佈nodejs應用程序的正確方法是什麼?
- 獲取標記:釋放存儲庫文件夾(在評論數作爲)運行在同一服務器上 -
Sync(function(){ var tag = getTag.sync(); //1 - getting the tag to release update.sync(null, tag); //2 - update current project to choosen tag archive.sync(); //3 - archive current released project stop.sync(); //4 - stop server del.sync(); //5 - delete currently released project copy.sync(); //6 - copy files from scm folder packAssets.sync(); //7 - minify javascript. css, less files start.sync(); //8 - start the application });
更詳細的描述:
我現在釋放腳本執行下列操作最後10個,並選擇編號或寫標籤名稱。
- 將當前存儲庫更新爲選定標記。
- 存檔應用程序文件夾 - 將其複製到具有唯一(數據)名稱的存檔文件夾。
- 通過調用
forever stop pid
來停止服務器 - 從現在起Nginx將顯示維護模式頁面。 - 刪除當前應用程序文件夾
- 複製文件從存儲庫文件夾釋放文件夾(跳過SCM文件夾 - 在我的情況.hg)
- 運行涅槃腳本JavaScript,CSS和減檔。
- 通過在發佈文件夾中調用
forever start server.js
來啓動應用程序。
函數(getTag,update,archive,stop,...)在同步調用上面聲明。
它是正確的嗎?
我不知道哪個正確,我的意思是它看起來像一個現場製作服務器,事情s應該是不會改變的,它應該比描述的風險小一些,將事情保持在'發展'階段更多的時間,如果沒有被破壞,然後遷移到'生產'模式並繼續行走。 – Gntem
是的,這是現場直播,我想知道如何正確發佈它 - 恐怕這個刪除步驟最多。我認爲這個標記的版本是穩定的並且想要發佈它。 – irla
你有沒有考慮在現場製作服務器中使用git?它比平面文件更容易且更易於管理,您可以恢復,放棄更改,並且在未經許可的情況下不會應用任何內容。 – Gntem