在阿里雲服務器centOs7系統中部署.NET Core項目

前言:之前阿里雲打折,買了個Linux服務器來練一練,嘗試着在Linux使用Nginx部署.net core項目

在CentOs系統中安裝.Net Core Sdk、Nginx

1、打開命令行,輸出以下命令,註冊Microsoft需要的依賴環境

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl=https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc">/etc/yum.repos.d/dotnetdev.repo'

2、安裝.NET SDK

  1、更新可用的安裝包

sudo yum update

  2、安裝.NET需要的組件

sudo yum install libunwind libicu

  3、安裝.NET SDK(dotnet –version查看開發環境的版本)

sudo yum install dotnet-sdk-2.1

  4、安裝完成之後,檢測是否安裝成功:

dotnet --version

 

3、使用VS發佈ASP.NET Core MVC程序,這裏我的vs版本是2017

  1、進入項目解決方案所在文件夾

  2、按住shift+右鍵,打開命令窗口

  3、執行dotnet publish自動發佈

  4、發佈文件目錄:\bin\Debug\netcoreapp2.1\publish

4、使用WinSCP傳輸發佈文件到CentOS服務器 (root/publish) ;附WinSCP下載地址:https://winscp.net/eng/download.php

5、安裝配置Nginx進行反向代理

  1、安裝CentOS的 EPEL倉庫

yum install epel-release

  2、安裝Nginx

yum install nginx

  3、啓動Nginx:

systemctl start nginx

  4、設置系統默認啓動Nginx

systemctl enable nginx

  5、查看防火牆狀態:

systemctl status firewalld

  6、啓動防火牆

systemctl start firewalld

  7、http通過:

firewall-cmd  --permanent --zone=public --add-service=http 

  8、https通過:

firewall-cmd  --permanent --zone=public --add-service=https 

  9、重啓Nginx:

firewall-cmd  --reload 

  10、在瀏覽器地址欄輸入你服務器的IP地址, 如果出現圖形表示Nginx安裝配置成功;

  11、如果無法訪問, 請查看firewall 是否開放80端口:

  12、開放80端口:firewall-cmd --zone= public --add-port= 3306 /tcp --permanent

   13、重啓防火牆:systemctl restart firewalld.service

6、修改Nginx的配置文件(root/)

  1、把Nginx的默認配置文件 /etc/nginx/nginx.conf 裏 80 端口轉發配置 server 節點用 # 符註釋掉

  

  2、重新創建一個自定義的Nginx配置文件用來代理Core程序, 名稱爲nginxforcore.conf(可自定義名稱)配置文件內容如下

server {
    listen 80;
    location / {
        proxy_pass http://localhost:5000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection keep-alive;
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

  3、將創建好的自定義配置文件上傳到 /etc/nginx/conf.d目錄下

  4、執行命令,重啓Nginx

nginx –s reload

 

在CentOs系統中運行.NET Core

1、cd到發佈目錄:cd \publish 

2、運行.Net Core程序: dotnet LinuxCore.dll (LinuxCore.dll是你發佈出來編譯過的項目)

3、瀏覽器訪問服務器外網地址

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