Asp.Net Core 2.0 之旅---在Ubuntu上部署WEB应用程序

1、Ubuntu 上 安装NET Core 2.0 SDK

第一步的安装,微软大佬已经写的非常详细了=》直达链接,按照教程来即可。

2、将我们的WEB 发布到一个文件夹,将这个文件夹打包成 压缩文件,准备上传。

3、通过Xshell ssh 连接到 服务器(ps:如果不知道怎么用Xshell的请自行百度)后。

4、创建 web项目 存放 目录后 ,就开始 上传 WEB项目的压缩包。

5、在YunSourse文件夹目录下输入 rz(ps:如果没有安装,ubuntu会提示安装)。Xshell会弹出一个选择的文件框,将你的压缩包选中后,即可上传。

6、上传 完成后,输入ls,会有一个1.7z的压缩文件,需要解压。输入 unzip 1.7z。将其压缩包加压

7、  然后 可以 启动WEB应用程序了。输入  dotnet xxx.dll ;(xxx.dll是你的 web项目类库的的dll),如果出现下面的内容。恭喜你。WEB项目启动成功!

8、但是 这只能在本地 访问,并不能 远程访问。所以需要一个 代理服务器 。在这里我选用的是 nginx。

9、首先 需要 安装ng。(vim 如果没有这个命令需要安装)

cd ~  
sudo apt-get install nginx    
vim /etc/nginx/sites-available/default   

  

然后 编辑 server  让其代理 http://localhost:5000。让 80端口的请求交给  http://localhost:5000 来处理。

server {
    listen 80;
    location / {
        proxy_pass http://localhost:8000;
        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;
    }
}

  

 完成之后需要重启nginx服务

sudo /etc/init.d/nginx restart

  

10、至此。你就可以 远程访问你的WEB项目了。不过 当服务器重启或者宕机后。你的WEB项目 并不会启动。这是就要需要守护进程了。这里我使用的是supervisor。

输入 命令:sudo apt-get install supervisor

安装完 supervisor 后,需要配置 它需要为谁守护。当然了,肯定是我们的WEB项目了。

11、输入 命令: cd /etc/supervisor/conf.d/

在 当前目录下新建文件  输入命令: touch text.conf (ps: text  可以为你的WEB项目的名字)

输入  命令  vim text.conf

[program:ShareYunSourse]     
command=dotnet ShareYunSourse.Web.dll   
directory=/usr/ShareYunSourse  
environment=ASPNETCORE__ENVIRONMENT=Production  
user=www-data   
stopsignal=INT  
autostart=true   
autorestart=true   
startsecs=1  
stderr_logfile=/usr/log/ShareYunSourse.err.log  
stdout_logfile=/usr/log/ShareYunSourse.out.log  

  

将 上面的文本 输入  保存 退出。

然后  重启supervisor

输入命令:

/etc/init.d/supervisor restart

好了! 至此大功告成。。。。。

原文地址:https://www.cnblogs.com/fireicesion/p/8457892.html