• .net core部署


    https://blog.csdn.net/Eternally_zl/article/details/101700363这里可能清楚些,两个博客都是我的,自己偷自己的。

    ## .net core部署
    事先声明下作者部署的情况:这里部署的是asp.net mvc core应用程序,使用的反向代理Nginx,服务器系统为CentOS。
    部署过程:
    部署asp.net core 应用程序需要用到两个东西:.NET Core SDK和Nginx
    部署之前需要把部署所需要的都搞定:
    系统:作者是先在vs中生成生成包,然后通过XFTP5放到var/website/路径中,这个路径不一定的,看您喜好了。
    我的路径及打开dll说明
    ![](https://img-blog.csdnimg.cn/20190929173025332.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0V0ZXJuYWxseV96bA==,size_16,color_FFFFFF,t_70)
    图1.0

    .NET Core SDK:安装SDK之前需要先安装它的依赖组件

    ```bash
    sudo yum update
    ```

    ```bash
    sudo yum install libunwind libicu
    ```

    ```bash
    sudo yum install dotnet-sdk-2.1
    ```

    上面三个命令逐一执行,作者这里用的是2.1版本,具体的自己看着来
    Nginx:
    首先添加CentOS 7 EPEL仓库

    ```bash
    sudo yum install epel-release
    ```

    然后安装Nginx

    ```bash
    sudo yum install nginx
    ```
    这里安装完nginx,它是不会自动打开的,需要手动开启

    ```bash
    sudo systemctl start nginx
    ```
    打开后你可以在同网段中访问您服务器的ip地址来验证是否成功运行
    ***记得别忘了打开80端口哦***
    到这里基本上准备工作已经做得差不多了
    现在正式开始部署
    首先我们可以先测试下系统是否能正常使用:
    进入您存放系统的目录,进到系统文件夹里面,您会看到一个格式为[程序名].dll的一个文件,然后打开它
    打开它(部署系统)有两种方式:
    一种是不后台运行ctrl+c退出运行

    ```bash
    dotnet [程序名].dll
    ```

    一种是后台运行ctrl+c出来接着其他工作,它会给您一个线程号,您想关闭它直接kill掉线程就好了

    ```bash
    sudo dotnet [程序名].dll &
    ```
    (想要看是哪个程序请看图1.0)
    ```bash
    关闭:kill [线程号]
    ```
    运行后可以打开浏览器输入:http://localhost:5000查看是否成功
    如没有可视化界面的可使用:

    ```bash
    wget打开:wget http://localhost:5000
    ```
    如果确认没问题了,这一步就完成了,不需要关闭,接着设置nginx
    部署系统和设置nginx不冲突谁前谁后无所谓
    设置nginx需要设置两个配置文件
    第一个:nginx.conf
    它在/etc/nginx/路径中
    ![](https://img-blog.csdnimg.cn/20190929173503994.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0V0ZXJuYWxseV96bA==,size_16,color_FFFFFF,t_70)
    图2.0


    vi打开它
    ins/i键开始修改
    把默认80端口转发配置server节点用#符注释掉。(注意不要漏了,不然会报错,不过后面跟着错误改也就好了)
    ![](https://img-blog.csdnimg.cn/20190929173616651.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0V0ZXJuYWxseV96bA==,size_16,color_FFFFFF,t_70)
    图3.0


    现在我们需要创建一个新文件(作者这里嫌麻烦直接用XFTP 5创建的),需要创建一个配置文件netcore.conf
    然后修改它为:

    ```bash
    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;
    }
    }
    ```
    ![](https://img-blog.csdnimg.cn/20190929174001599.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0V0ZXJuYWxseV96bA==,size_16,color_FFFFFF,t_70)

    设置完成后这个文件需要放到/etc/nginx/conf.d目录中去
    ![](https://img-blog.csdnimg.cn/20190929174139225.png)
    图4.0


    然后重启

    ```bash
    重启命令:nginx -s reload
    ```
    到这里就已经完成了,但是!!!
    但是!!!
    有一点一定要注意,由于SELinux保护机制,我们很可能打开会显示502,我们需要把nginx加入白名单中:

    ```bash
    yum install policycoreutils-python
    ```

    ```bash
    sudo cat /var/log/audit/audit.log | grep nginx | grep denied | audit2allow -M mynginx
    ```

    ```bash
    sudo semodule -i mynginx.pp
    ```
    以上命令逐句执行即可。

    应该没啥问题了,就想到这些了。有误的评论区留言。有疑惑的也评论区留言,有时间就会回复。

  • 相关阅读:
    MS CRM 2011的自定义和开发(10)——CRM web服务介绍(第一部分)——IDiscoveryService
    MS CRM 2011的自定义和开发(7)——视图编辑器(第二部分)
    MS CRM 2011 SDK 5.06版本已经发布
    MS CRM 2011的自定义和开发(11)——插件(plugin)开发(一)
    近来遇到的MS CRM 2011方面的几个问题
    MS CRM 2011的自定义与开发(6)——表单编辑器(第二部分)
    Microsoft Dynamics CRM 2011中,Lookup字段的赋值
    MS CRM 2011的自定义和开发(6)——表单编辑器(第三部分)
    Visual Studio 目标框架造成 命名空间“Microsoft”中不存在类型或命名空间名称“Crm”。是否缺少程序集引用中错误的处理
    一步步学习Reporting Services(二) 在报表中使用简单的参数作为查询条件
  • 原文地址:https://www.cnblogs.com/zhoulei0517/p/11609159.html
Copyright © 2020-2023  润新知