如何在Linux服務(wù)器上部署.Net Core?
如何在Linux服務(wù)器上部署.Net Core?.Net Core是.Net Framework的新一代版本,對于新手來說,將.Net Core部署在Linux服務(wù)器上是一件相當(dāng)困難的事,為了幫助大家解決困難,今天小編要給大家分享如何在Linux服務(wù)器上部署.Net Core?
1、簡介
一直以來,微軟只對自家平臺(tái)提供.NET支持,這樣等于讓這個(gè)“理論上”可以跨平臺(tái)的框架在Linux和macOS上的支持只能由第三方項(xiàng)目提供(比如Mono .NET)。直到微軟推出完全開源的.NET Core。這個(gè)開源的平臺(tái)兼容.NET Standard,并且能在Windows、Linux和MacOS上提供完全一致的API。雖然這個(gè)小巧的.NET框架只是標(biāo)準(zhǔn).NET的一個(gè)子集,但是已經(jīng)相當(dāng)強(qiáng)大了。
一方面,這個(gè)小巧的框架可以讓某些功能性應(yīng)用同時(shí)運(yùn)行在三個(gè)平臺(tái)上(就像某些功能性的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):
然后從微軟官方獲取.NET Core的主程序:
如果你的服務(wù)器不能正確訪問這個(gè)地址,你可能需要手動(dòng)訪問后面的地址,下載完畢之后,用任意一種方法傳遞進(jìn)服務(wù)器,并命名為dotnet.tar.gz。
執(zhí)行指令將組件解壓至指定的位置:
創(chuàng)建鏈接以在任何路徑下直接引用dotnet指令:
至此,.NET Core框架應(yīng)該就在你的服務(wù)器上搭建好了。
3、嘗試部署一個(gè)ASP .NET服務(wù)程序
在本地計(jì)算機(jī)上,修改Visual Studio功能,確保這一項(xiàng)是被安裝的:

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

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

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

保存工程,將整個(gè)解決方案上傳至服務(wù)器。再次連接服務(wù)器,導(dǎo)航到你存放工程文件的目錄下,執(zhí)行指令:
該指令指揮.NET Core恢復(fù)這個(gè)工程引用的包,耐心等待指令執(zhí)行完畢。
接著,執(zhí)行指令:
這條指令將使.NET Core編譯并運(yùn)行這個(gè)工程。控制臺(tái)沒有錯(cuò)誤信息并產(chǎn)生類似輸出,你的ASP .NET Core應(yīng)用程序就應(yīng)該在正確運(yùn)行了:
試著在任意設(shè)備上訪問你服務(wù)器的IP地址(或者域名),如果能正確加載默認(rèn)頁面,你的.NET Core環(huán)境就算部署完畢了:

這個(gè).NET框架只是.NET標(biāo)準(zhǔn)的一個(gè)子集,不一定能100%兼容一個(gè)復(fù)雜的ASP .NET服務(wù)程序。但是利用這個(gè)框架,你可以把服務(wù)器切換至Linux系統(tǒng),卻仍然采用ASP .NET作為服務(wù)程序的具體實(shí)現(xiàn)方法。你也不必為了調(diào)試運(yùn)行于Linux的服務(wù)程序而專門去配置一個(gè)Linux工作環(huán)境——因?yàn)?NET Core也可以運(yùn)行在Windows上,Visual Studio本身就支持使用IIS Express來本地調(diào)試一個(gè)ASP .NET Core應(yīng)用程序。
不知道如何將.NET Core部署在Linux服務(wù)器上的伙伴,可以參照教程一步步操作,希望該教程能幫助到大家。
相關(guān)文章:
1. deepin文件有個(gè)鎖頭怎么刪除? deepin刪除帶鎖頭文件的技巧2. 微軟Win11專業(yè)版即將默認(rèn)禁用 SMB 來賓認(rèn)證服務(wù)3. deepin linux怎么切換到root權(quán)限? Deepin切換root用戶的技巧4. 深度操作系統(tǒng)20.5發(fā)布 deepin 20.5更新內(nèi)容匯總5. mac安全模式怎么進(jìn)入? Mac系統(tǒng)進(jìn)入安全模式方法6. 在FreeBSD 8.1下搭建Git服務(wù)器步驟7. Linux Mint系統(tǒng)輸入法怎么刪除? Linux Mint刪除多余輸入法的技巧8. Mac無線網(wǎng)絡(luò)怎么設(shè)置?蘋果Mac電腦無線網(wǎng)絡(luò)設(shè)置教程9. Win11 正式版 Build 22621.1105一月累積更新補(bǔ)丁KB5022303發(fā)布(附完整更新日志)10. 深度操作系統(tǒng)Deepin20.2.1發(fā)布(附下載和更新日志)
