1. 程式人生 > 程式設計 >將.NET 6專案部署到Linux

將.NET 6專案部署到Linux

目錄
  • 搭建伺服器
  • 安裝Liunx遠端連線工具
  • 安裝.NET執行環境
    • 在xshell中執行以下命令,新增包簽名
    • 安裝NET6 SDK
  • 生成ASP.NET Core
    • 部署網站

      搭建Linux伺服器

      要搭建一個部署ASP.NET core的伺服器,一般情況有兩種選擇。

      一是購買雲伺服器,最近天翼雲搞活動,一年通用型雲主機,才60RMB,還是蠻優惠的。部署個人網站,搞個測試還是夠用了。本人就使用雲伺服器做下面的演示。

      如果覺得沒必要買雲伺服器,可以自己使用虛擬機器,安裝Linux也是可以的,看個人喜好。

      雲伺服器購買好後,進入控制中心檢視雲主機,友情提示,電信的控制中心有個很不友好的地方,就是必須選對雲主機所在地區才會顯示,我在此掉個一次坑,提醒大家避坑。

      將.NET6專案部署到Linux

      言歸正傳,我用的是Ubuntu20.64版本的,不過你也選擇其他Linux系統,不過需要注意的是,你選擇的Linux系統版本和.core版本是否適配.從https://docs.microsoft.com/zh-cn/dotnet/core/install/linux?WT.mc_id=dotnet-35129-website 可以檢視詳細的各個Linux系統和.NET的版本適配。

      將.NET6專案部署到Linux

      從圖http://www.cppcns.com中看到目前只顯示最高支援5.0,經測試最新版的6.0也是支援的。

      如果購買時選錯了,也沒關係,可以更換系統,我就從CentOS更換到了Ubuntu

      將.NET6專案部署到Linux

      如果購買時沒有要求設定密碼,還有在控制中心設定一下密碼,用於Linux系統登入。

      安裝Liunx遠端連線工具

      ​ 家用免費版Xshell 7(命令列工具)和Xftp 7(檔案傳輸)下載,安裝好使用雲伺服器賬號登入,不出意外你將看到一下介面。

      將.NET6專案部署到Linux

      安裝.NET執行環境

      點選在 Ubuntu 上安裝 .NET - .NET | Microsoft Docs安裝對應版本的執行環境.

      將.NET6專案部署到Linux

      我的是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專案部署到Linux

      安裝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

      將.NET6專案部署到Linux

      測試是否安裝成功,執行

      dotnet --version
      //顯示安裝的版本號,恭喜你安裝成功

      注意:此種環境安裝方式是需要網路支援的。有些企業網路資源訪問受限,使用此種方式是安裝不了。就需要下載安裝包,手動安裝,官方也有詳細的手動安裝說明,這裡就不累述了。

      生成ASP.NET Core網站

      開啟vs2022(目前只有vs2022才支援.NET6的開發),建立一個ASP.NET CORE WEB應用,取一個喜歡的名字,建立完成,專案看起來是醬樣子的,一個簡單的asp網站就建好了。

      將.NET6專案部署到Linux

      為了除錯和釋出後網站訪問埠一直,需要更改一下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”,可自行指定其他目錄

      將.NET6專案部署到Linux

      網站釋出好後,離成功就一步之遙了,心情越來越激動了。

      部署網站

      開啟Xftp 7,用雲系統使用者登入www.cppcns.com,就可以操作本地檔案一樣方便了,直接把釋出資料夾拖到右邊,檔案就非常愉悅的傳到了伺服器上。

      對於我們這種不太熟悉Linux系統的人,這通操作,簡直不要太愉悅了。

      將.NET6專案部署到Linux

      如果資料夾檔案比較多,大的話,壓縮為zip,再拖過去,或許www.cppcns.com會更好。

      如果是zip壓縮包,就還需要在伺服器安裝zip解壓軟體。安裝也很簡單,xshell執行

      sudo apt-get install unzip 

      定位到zip壓縮包,執行

      unzip ***(壓縮包名稱).zip

      網站檔案解壓出來後,定位到網站目錄,執行

      dotnet apptest(一般與專案同名).dll

      將.NET6專案部署到Linux

      如果看到網站訪問地址,就說明網站已成功啟動。至此,算是大功告成。

      還沒完,難道你就不想看看,一通操作後的結果嗎?來看看吧。

      訪問地址 http://伺服器IP:8880

      將.NET6專案部署到Linux

      以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。