.net core 3.1 部署在linux centos 8上, 並使用nginx代理

一  程序準備

1.1 將程序發佈到linux上, 可以通過複製文件, ftp等方法, 這裏不贅述. 需要注意的是在發佈的時候需要修改以下幾個參數

 

 二 linux 上安裝環境, 並執行

2.1. 將 Microsoft 包簽名密鑰添加到受信任密鑰列表,並添加 Microsoft 包存儲庫, 命令: 

sudo rpm -Uvh https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm

2.2.  安裝.net SDK, 命令:

 sudo yum install dotnet-sdk-3.1

 2.3. 安裝.net runtime, 命令: 

sudo yum install dotnet-runtime-3.1

 2.4. 進入我們放程序的位置, 然後後臺啓動程序 ,  可以指定端口號, 執行完成後會返回這個進程的pid, 命令:

nohup dotnet XXXX.dll --urls="http://*:8081;" > /dev/null 2>&1 &

啓動後可以再次查看進程的狀態, 命令:

ps -aux | grep "xxxx.dll"

 2.5. 瀏覽器裏檢查效果, 這個時候需要確保服務器對應的端口是可以訪問的. 結束後可以用kill命令關閉進程

 

附加A, 使用nginx 代理

1. 配置nginx文件

2. 重啓nginx服務器, 命令:

systemctl restart nginx

3. 檢查效果

附加B

在2.4步驟的時候, 網上的很多教程沒有使用 nohup 命令而是直接啓動, 這樣會導致關閉終端就直接關閉了進程. 

在linux中,每個系統與用戶進行交流的界面稱爲終端,每一個從此終端開始運行的進程都會依附於這個終端,這個終端被稱爲這些進程的控制終端,當控制終端被關閉的時候,相應的進程都會自動關閉。

 使用nohup開啓後臺進程雖然可以在終端關閉後還能運行,但是當系統關機重啓後,進程就沒有了,這個時候還是需要手動啓動,這個時候需要用到守護進程(Daemon)

參考文獻

微軟官方文檔: https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-centos#centos-8-

菜鳥: https://www.runoob.com/linux/linux-comm-nohup.html

博客: https://www.cnblogs.com/jayjiang/p/12610545.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章