Home  >  Article  >  Operation and Maintenance  >  How to deploy DoNetCore to Alibaba Cloud with Nginx

How to deploy DoNetCore to Alibaba Cloud with Nginx

PHPz
PHPzforward
2023-05-13 22:37:11928browse

Basic environment configuration

Please purchase the domain name and server by yourself first

Create an application instance based on cloud server ecs, select the system image as ubuntu 16.04, and run it on this machine Connect remotely through ssh and perform related configurations
ssh

...

sudo apt-get update
sudp apt-get upgrade
sudo apt-get autoremove
sudo apt-get clean

Install and configure nginx

sudo apt-get install nginx
sudo service nginx start
sudo gedit /etc/nginx/sites-available/default

Configure the default file and configure the following node information at the end of the file

# virtual host configuration for example.com
#
# you can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
server {
 listen  80;
 # 网站文件的目标位置
 root /home/hippie/website/wwwroot;
 # 网站域名
 server_name your website name;
  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;
   proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
   proxy_set_header x-forwarded-proto $scheme;
 }
}

Detect configuration and update

sudo nginx -t
sudo nginx -s reload

Install dotnetcore

Please refer to the official website for the latest installation instructions: .netcore download

Deployment process

Open visualstudio2017, right-click the project to be published, click publish, and refer to the figure below for relevant configuration.

How to deploy DoNetCore to Alibaba Cloud with Nginx

How to deploy DoNetCore to Alibaba Cloud with Nginx

Click the save button and perform the publish operation. Then upload the publish folder to the corresponding location on the server. After the upload is successful, execute
dotnet run app.dll

If nothing unexpected happens, at this time, you can use ip or Your website domain name is used for access.

Create a daemon process

After performing the above operations, our program still cannot run for a long time, so we need to manage our website through a daemon process

sudo apt-get install supervisor
sudo vim /ect/supervisor/conf.d/website.conf

Configure website.conf file

[program:website]
#要执行的命令
command=/usr/bin/dotnet attention.dll 
#命令执行的目录
directory=/home/hippie/website 
#环境变量
environment=aspnetcore__environment=production 
 #进程执行的用户身份
user=www-data 
stopsignal=int
#是否自动启动
autostart=true
#是否自动重启
autorestart=true
#自动重启间隔
startsecs=1 
#标准错误日志
stderr_logfile=/var/log/website.err.log 
#标准输出日志
stdout_logfile=/var/log/website.out.log

At this time, we execute the following command to start the daemon process

sudo supervisorctl shutdown && sudo supervisord -c /etc/supervisor/supervisord.conf
supervisorctl shutdown 
sudo service supervisor start

Okay, at this time you can try to close the remote connection for website access. If If you can access it normally, it means your configuration has taken effect.

The above is the detailed content of How to deploy DoNetCore to Alibaba Cloud with Nginx. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete