• 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

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

  • 相关阅读:
    MVP福利利用Azure虚拟机玩Windows Server 2012
    负载均衡的基本算法
    RavenDB:基于Windows/.NET平台的NoSQL数据库
    使用Autofac在ASP.NET Web API上实现依赖注入
    Mono 3 的默认Gc是Sgen
    MSDN 杂志 Windows 8 特刊
    AggSharp Agg的.NET 移植
    使用谷歌翻译/微软翻译迅速使你的博客支持多国语言
    Service Bus for Windows server
    用Xwt构建跨平台应用程序[转载]
  • 原文地址:https://www.cnblogs.com/fireicesion/p/8457892.html
Copyright © 2020-2023  润新知