如何將asp.net core程序部署到Linux服務(wù)器
目錄
- 1.創(chuàng)建一個測試的asp.net core web api 項(xiàng)目
- 2.準(zhǔn)備一臺云服務(wù)器或者虛擬機(jī)
- 3.安裝asp.net core runtime 運(yùn)行時即可。
- 4.使用dotnet和dotnet --info查看信息:
- 5.將項(xiàng)目上傳到Linux環(huán)境上:
公司項(xiàng)目一直都是在window server部署core項(xiàng)目,還是想學(xué)習(xí)下Linux的部署方式,加上前段時間學(xué)習(xí)了Linux一些常用知識,一直也在敲。微服務(wù)架構(gòu)中,又學(xué)習(xí)了Nginx服務(wù)器的一些知識。
今天抽空將這塊整合起來。
1.創(chuàng)建一個測試的asp.net core web api 項(xiàng)目
項(xiàng)目開發(fā)環(huán)境和工具:
Visual Studion 2019
asp.net core 版本:3.1
2.準(zhǔn)備一臺云服務(wù)器或者虛擬機(jī)
操作系統(tǒng)版本:Centos 8
3.安裝asp.net core runtime 運(yùn)行時即可。
因?yàn)槲覀冎皇窃贚inux上去運(yùn)行我們的asp.net core項(xiàng)目而已,不需要進(jìn)行開發(fā),sdk太重了。
sudo yum install aspnetcore-runtime-3.1
注意:直接安裝,不要像其他博主寫的還要更新什么的,坑死了。出現(xiàn)各種問題
沒有yum環(huán)境,會自動安裝。
不要像下面這樣操作:
安裝后的頁面:
4.使用dotnet和dotnet --info查看信息:
看到上圖說明,已成功安裝runtime.
5.將項(xiàng)目上傳到Linux環(huán)境上:
在根目錄下創(chuàng)建一個AspNetCoreProjects目錄
使用Xftp將整個項(xiàng)目文件上傳至該目錄下:
進(jìn)入到Debug/netcoreapp3.1 啟動目錄,通過控制臺方式啟動項(xiàng)目:
cd /AspNetCoreProjects/AutoMapperWebApiTest/bin/Debug/netcoreapp3.1
通過ll或者ls查看文件:
通過以下命令,啟動該項(xiàng)目:
dotnet WebApiTest.dll --urls http://*:5008
大前提:在騰訊云防火墻處,開放5008端口
在瀏覽器通過公網(wǎng)IP:port/swagger/index.html 進(jìn)行訪問:
如果打不開,可能是防火墻開啟了。我當(dāng)前云服務(wù)的防火墻默認(rèn)是關(guān)閉的。
那么如果防火墻開啟的話,如何解決?
查看防火墻狀態(tài):
service firewalld status
嘗試開啟防火墻
service firewalld status
重新啟動項(xiàng)目,發(fā)現(xiàn)根本訪問不了了。
現(xiàn)在我們需要將5008端口添加到防火墻中:
firewall-cmd --zone=public --add-port=5008/tcp --permanent
然后重啟下防火墻:
firewall-cmd --reload
再次啟動該項(xiàng)目,可以正常訪問.
以上方式是通過控制臺方式啟動的,窗口關(guān)掉就會停止,進(jìn)程就被kill掉。
這種方式只是一種演示手段,無法用于實(shí)際生產(chǎn)環(huán)境。
到此這篇關(guān)于將asp.net core程序部署到Linux服務(wù)器上的文章就介紹到這了,更多相關(guān)asp.net core部署Linux服務(wù)器內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
