天天看點

使用批處理(.bat)檔案一鍵編譯 .NET CORE 網站并釋出至 IIS

向 IIS 釋出網站的傳統方式是:開發人員在開發機上對項目源代碼編譯并将生成的程式集複制到伺服器上的網站目錄中.在 .NET CORE 時代開啟後,複制操作很容易因為檔案占用而失敗.

在經曆了一天之内多次複制釋出的繁瑣操作之後,筆者測試并實作了一個一鍵釋出的流程,該流程簡單易實施,僅需兩個批處理檔案即可完成:

update.bat

源代碼管理器已經是軟體開發過程中的标配,如果你和筆者一樣使用 git 作為源代碼管理器,使用 gitee 作為源代碼伺服器,那麼隻需在部署伺服器上安裝 git 環境,生成密鑰并添加到倉庫的“部署密鑰”中便可以直接在伺服器上拉取源碼,

update.bat

檔案隻需包含拉取指令即可:

git pull           

publish.bat

有了源代碼,就可以通過

dotnet build

指令生成項目。生成成功之後,先将網站的“應用程式池”關閉然後再複制生成好的檔案到網站目錄,最後重新啟動“應用程式池”。

假設網站目錄為

D:\Website\www.coderbusy.com

應用程式池名稱為

www.coderbusy.com

項目目錄為

src\website

則一個完整的

publish.bat

檔案内容如下:

dotnet publish src\website -c Release -o build\website
    %SYSTEMROOT%\System32\inetsrv\appcmd stop apppool /apppool.name:"www.coderbusy.com" 
    xcopy build\website "D:\Website\www.coderbusy.com" /sey
    %SYSTEMROOT%\System32\inetsrv\appcmd start apppool /apppool.name:"www.coderbusy.com"
    pause