明輝手游網(wǎng)中心:是一個免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

怎么在Linux服務(wù)器上部署.Net Core?

[摘要]如何在Linux服務(wù)器上部署.Net Core?.Net Core是.Net Framework的新一代版本,對于新手來說,將.Net Core部署在Linux服務(wù)器上是一件相當(dāng)困難的事,為了幫助大...

  如何在Linux服務(wù)器上部署.Net Core?.Net Core是.Net Framework的新一代版本,對于新手來說,將.Net Core部署在Linux服務(wù)器上是一件相當(dāng)困難的事,為了幫助大家解決困難,今天小編要給大家分享如何在Linux服務(wù)器上部署.Net Core?

  1、簡介

  一直以來,微軟只對自家平臺提供.NET支持,這樣等于讓這個“理論上”可以跨平臺的框架在Linux和macOS上的支持只能由第三方項(xiàng)目提供(比如Mono .NET)。直到微軟推出完全開源的.NET Core。這個開源的平臺兼容.NET Standard,并且能在Windows、Linux和MacOS上提供完全一致的API。雖然這個小巧的.NET框架只是標(biāo)準(zhǔn).NET的一個子集,但是已經(jīng)相當(dāng)強(qiáng)大了。

  一方面,這個小巧的框架可以讓某些功能性應(yīng)用同時運(yùn)行在三個平臺上(就像某些功能性的Python腳本一樣),另一方面,這也可以讓服務(wù)器運(yùn)維人員將ASP .NET服務(wù)程序部署在Linux服務(wù)器上(特別是對于運(yùn)行Windows Server較為吃力的服務(wù)器)。

  2、部署.NET Core

  由于我沒有可用的macOS設(shè)備,我將僅用Linux(服務(wù)器)作示范。我作示范的服務(wù)器是CentOS7操作系統(tǒng)。

  SSH連接至服務(wù)器,安裝.NET Core的依賴項(xiàng):

如何在Linux服務(wù)器上部署.Net Core?

  然后從微軟官方獲取.NET Core的主程序:

如何在Linux服務(wù)器上部署.Net Core?

  如果你的服務(wù)器不能正確訪問這個地址,你可能需要手動訪問后面的地址,下載完畢之后,用任意一種方法傳遞進(jìn)服務(wù)器,并命名為dotnet.tar.gz。

  執(zhí)行指令將組件解壓至指定的位置:

如何在Linux服務(wù)器上部署.Net Core?

  創(chuàng)建鏈接以在任何路徑下直接引用dotnet指令:

如何在Linux服務(wù)器上部署.Net Core?

  至此,.NET Core框架應(yīng)該就在你的服務(wù)器上搭建好了。

  3、嘗試部署一個ASP .NET服務(wù)程序

  在本地計算機(jī)上,修改Visual Studio功能,確保這一項(xiàng)是被安裝的:

如何在Linux服務(wù)器上部署.Net Core?

  啟動Visual Studio,新建一個ASP .NET Core項(xiàng)目:

如何在Linux服務(wù)器上部署.Net Core?

  類型選擇Web應(yīng)用程序。我們不對示例作太大的修改,僅僅是為了演示ASP .NET運(yùn)行于.NET Core的狀況。在項(xiàng)目資源管理器內(nèi)打開Program.cs,依然是熟悉的C#代碼:

如何在Linux服務(wù)器上部署.Net Core?

  為了能正常運(yùn)行,我們稍稍修改代碼,讓host的對象初始化器看起來是這個樣子:

如何在Linux服務(wù)器上部署.Net Core?

  保存工程,將整個解決方案上傳至服務(wù)器。再次連接服務(wù)器,導(dǎo)航到你存放工程文件的目錄下,執(zhí)行指令:

如何在Linux服務(wù)器上部署.Net Core?

  該指令指揮.NET Core恢復(fù)這個工程引用的包,耐心等待指令執(zhí)行完畢。

  接著,執(zhí)行指令:

如何在Linux服務(wù)器上部署.Net Core?

  這條指令將使.NET Core編譯并運(yùn)行這個工程。控制臺沒有錯誤信息并產(chǎn)生類似輸出,你的ASP .NET Core應(yīng)用程序就應(yīng)該在正確運(yùn)行了:

如何在Linux服務(wù)器上部署.Net Core?

  試著在任意設(shè)備上訪問你服務(wù)器的IP地址(或者域名),如果能正確加載默認(rèn)頁面,你的.NET Core環(huán)境就算部署完畢了:

如何在Linux服務(wù)器上部署.Net Core?

  這個.NET框架只是.NET標(biāo)準(zhǔn)的一個子集,不一定能100%兼容一個復(fù)雜的ASP .NET服務(wù)程序。但是利用這個框架,你可以把服務(wù)器切換至Linux系統(tǒng),卻仍然采用ASP .NET作為服務(wù)程序的具體實(shí)現(xiàn)方法。你也不必為了調(diào)試運(yùn)行于Linux的服務(wù)程序而專門去配置一個Linux工作環(huán)境——因?yàn)?NET Core也可以運(yùn)行在Windows上,Visual Studio本身就支持使用IIS Express來本地調(diào)試一個ASP .NET Core應(yīng)用程序。

  不知道如何將.NET Core部署在Linux服務(wù)器上的伙伴,可以參照教程一步步操作,希望該教程能幫助到大家。


Linux是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng)