將.NET 6專案部署到Linux
目錄
- 搭建伺服器
- 安裝Liunx遠端連線工具
- 安裝.NET執行環境
- 在xshell中執行以下命令,新增包簽名
- 安裝NET6 SDK
- 生成ASP.NET Core
- 部署網站
搭建Linux伺服器
要搭建一個部署ASP.NET core的伺服器,一般情況有兩種選擇。
一是購買雲伺服器,最近天翼雲搞活動,一年通用型雲主機,才60RMB,還是蠻優惠的。部署個人網站,搞個測試還是夠用了。本人就使用雲伺服器做下面的演示。
如果覺得沒必要買雲伺服器,可以自己使用虛擬機器,安裝Linux也是可以的,看個人喜好。
雲伺服器購買好後,進入控制中心檢視雲主機,友情提示,電信的控制中心有個很不友好的地方,就是必須選對雲主機所在地區才會顯示,我在此掉個一次坑,提醒大家避坑。
言歸正傳,我用的是Ubuntu20.64版本的,不過你也選擇其他Linux系統,不過需要注意的是,你選擇的Linux系統版本和.core版本是否適配.從https://docs.microsoft.com/zh-cn/dotnet/core/install/linux?WT.mc_id=dotnet-35129-website 可以檢視詳細的各個Linux系統和.NET的版本適配。
從圖http://www.cppcns.com中看到目前只顯示最高支援5.0,經測試最新版的6.0也是支援的。
如果購買時選錯了,也沒關係,可以更換系統,我就從CentOS更換到了Ubuntu
如果購買時沒有要求設定密碼,還有在控制中心設定一下密碼,用於Linux系統登入。
安裝Liunx遠端連線工具
家用免費版Xshell 7(命令列工具)和Xftp 7(檔案傳輸)下載,安裝好使用雲伺服器賬號登入,不出意外你將看到一下介面。
安裝.NET執行環境
點選在 Ubuntu 上安裝 .NET - .NET | Microsoft Docs安裝對應版本的執行環境.
我的是ubuntu20.4,就選擇20.4好了。
在xshell中執行以下命令,新增包簽名
wget https://packages.microsoft.com/config/ubuntu/21.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb rm packages-microsoft-prod.deb
安裝NET6 SDK
sudo apt-get update; \ sudo apt-get install -y apt-transport-https && \ sudo apt-get update && \ sudo apt-get install -y aspnetcore-runtime-6.0
測試是否安裝成功,執行
dotnet --version //顯示安裝的版本號,恭喜你安裝成功
注意:此種環境安裝方式是需要網路支援的。有些企業網路資源訪問受限,使用此種方式是安裝不了。就需要下載安裝包,手動安裝,官方也有詳細的手動安裝說明,這裡就不累述了。
生成ASP.NET Core網站
開啟vs2022(目前只有vs2022才支援.NET6的開發),建立一個ASP.NET CORE WEB應用,取一個喜歡的名字,建立完成,專案看起來是醬樣子的,一個簡單的asp網站就建好了。
為了除錯和釋出後網站訪問埠一直,需要更改一下appsettings.on的配置。增加一項"urls": "http://*:8880",‘8880'嘛就是網站訪問埠,可自行修改。
{ "Logging": { "LogLevel": { "Default": "Information","Microsoft.AspNetCore": "Warning" } },"urls": "http://*:8880","AllowedHosts": "*" }
釋出網站
開啟powershell,執行
dotnet publish --framework net6.0 --runtime ubuntu.20.04-x64 --output "D:\wb\ubuntu2004" --configuration Release --no-self-contained
釋出檔案放在“D:\wb\ubuntu2004”,可自行指定其他目錄
網站釋出好後,離成功就一步之遙了,心情越來越激動了。
部署網站
開啟Xftp 7,用雲系統使用者登入www.cppcns.com,就可以操作本地檔案一樣方便了,直接把釋出資料夾拖到右邊,檔案就非常愉悅的傳到了伺服器上。
對於我們這種不太熟悉Linux系統的人,這通操作,簡直不要太愉悅了。
如果資料夾檔案比較多,大的話,壓縮為zip,再拖過去,或許www.cppcns.com會更好。
如果是zip壓縮包,就還需要在伺服器安裝zip解壓軟體。安裝也很簡單,xshell執行
sudo apt-get install unzip
定位到zip壓縮包,執行
unzip ***(壓縮包名稱).zip
網站檔案解壓出來後,定位到網站目錄,執行
dotnet apptest(一般與專案同名).dll
如果看到網站訪問地址,就說明網站已成功啟動。至此,算是大功告成。
還沒完,難道你就不想看看,一通操作後的結果嗎?來看看吧。
訪問地址 http://伺服器IP:8880
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。