dotnet專案CICD研究整理3
1.首先針對2016環境安裝IIS伺服器
在伺服器管理員儀表板上操作:
從伺服器集區挑選要建構的伺服器,一般就是選到該台主機
這邊就要勾選起來"網頁伺服器IIS"會出現新的畫面填寫
後面額外多勾4.6:
先試試不重開機(當然有重開最好)
安裝過程畫面:
大約一分鐘左右裝完後看到:
背後的伺服器管理員儀表板多出:
開瀏覽器打localhost看到IIS預設歡迎網頁:
這時候可以開cmd透過指令確認IIS運作狀態:
#執行(status可以替換為其他像是stop,start,restart等):
iisreset /status
2.安裝.NET Core SDK
接著因為當前要佈署的是.NET Core程式
根據微軟文件在該機台要安裝.NET Core SDK
首先確認是否已有安裝
搜尋輸入"regedit"開啟"登錄編輯程式"視窗
#然後找到這個路徑:
電腦\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Updates
所以參考微軟連結進行安裝檔的安裝(LINK)
用以讓IIS可以運行dotnet core應用程式
沒幾秒就裝完了:
依樣透過regedit確認
3.設置IIS:
在"站台"右鍵新增網站
會需要指定一個目錄供程式的佈署放置檔案,如果IIS有執行的User
需要針對該目錄提供IIS的User有讀寫的權限,參考網站範例如下:
我這邊沒有特別建立IIS的User所以就略過
然後看到:
在"應用程式集區"調整剛剛建立的網站的CLR改為"沒有Managed 程式碼"
上述設定相關參考LINK
另外可以到模組去確認.NET CORE的模組是否運行:
後來參考(LINK)打開應用程式Log
重啟集區與站台後,依樣瀏覽器嘗試連線
透過連結去下載6版的Hosting Bundle安裝(同前面3或7的安裝)
保險起見還是重載集區跟站台:
後來看到swgger頁面變成404了
但是事件檢視器正常
查看AP的log資料有產出,但是沒有內容(看起來是正常運作的樣子)
後來爬文到(LINK):
預設佈署到IIS會導致swagger不啟用,要依照上面設置環境如上Development
最終我的web.config長這樣:
才能正常啟用swagger
然後終於看到...
並且也試了可以swagger測試Get API:
記得上述佈署是先"停止"站台後
才搬移dotnet publish產出在publish目錄內的內容到站台設置的佈署目錄後
再把站台啟動才能正常佈署
搬移的內容只有:
參考微軟解說LINK
以及保哥解說LINK
鐵人文LINK
windows2016啟用安裝IIS參考LINK