[原創]Debian10 安裝配置ASP.NET Core+Nginx+Supervisor (2020.01.8更新)


序言


 此教程安裝的都是最新版本的。

 

 

一鍵安裝


 有了這個神器,下面的教程就不用做了!只需運行幾行代碼,直接打開瀏覽器就可以訪問!

cd /home/
wget https://files.cnblogs.com/files/project/install.sh
chmod 777 install.sh ./install.sh

 

 

准備工作


1. 更新系統

沒啥,就他喵想用個最新的。

apt update && apt upgrade

 

2. 創建目錄

創建目錄,分別用來放配置文件和網站。

mkdir /web/

 

 

一、ASP.NET Core


官方網站:https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-package-manager-debian10

1. 注冊Microsoft密鑰和訂閱源

wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg
sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/
wget -q https://packages.microsoft.com/config/debian/10/prod.list
sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list
sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg
sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list

 

2. 安裝.NET Core SDK

sudo apt-get update
sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install dotnet-sdk-3.1

 

3. 利用.NET Core SDK創建一個web實例

創建 Web 應用項目

cd /web/
dotnet new webapp -o app

 

 

二、Supervisor


官方網站:http://www.supervisord.org/

 

1. 安裝Supervisor

apt install -y supervisor

 

2. 編輯supervisord.conf

vim /etc/supervisor/supervisord.conf

 

3. 新建配置文件

將下面配置文件存到/etc/supervisor/conf.d/app.conf

[program:app]
command=dotnet run      ;要執行的命令
directory=/web/app/     ;命令執行的目錄
autostart=true          ;是否自動啟動
autorestart=true        ;是否自動重啟
stderr_logfile=/var/log/webapp.err.log ;標准錯誤日志
stdout_logfile=/var/log/webapp.out.log ;標准輸出日志

 

4. 重新啟動

supervisorctl shutdown
supervisord -c /etc/supervisor/supervisord.conf

 

 

四、Nginx


官方網站:http://nginx.org/

 

1. 安裝nginx

apt install -y nginx

 

2. 編輯nginx.conf

vim /etc/nginx/nginx.conf

 

3. 修改如下

worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    gzip  on;

    server {
        listen       80;
        server_name  localhost;

        location / {
            proxy_pass https://localhost:5001;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection keep-alive;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_cache_bypass $http_upgrade;
        }
    }
}

 

4. 重新加載

nginx -s reload

 

 

五、效果預覽


 

 

 

、常用命令


 nginx

# nginx             //啟動nginx
# nginx -s reload   //重啟nginx
# nginx -s stop     //關閉nginx

 

 supervisor

supervisord supervisorctl status //查看所有任務狀態
supervisorctl shutdown  //關閉所有任務
supervisorctl start|stop|restart all          //控制所有進程
supervisorctl start|stop|restart program_name //控制目標進程 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM