centos7 部署.net core

搭建的环境为Centos7 + .net core  + supervisor + nginx 

1、如何安装ftp上传文件,以前有博文介绍,CentOS7 FTP安装与配置 - 有梦的秋天 - 博客园 (cnblogs.com)

2、安装.net core 

  下载地址:Download .NET (Linux, macOS, and Windows) (microsoft.com)

      

  在 CentOS 上安装 .NET - .NET | Microsoft Docs 按照链接提示,进行安装

  

  最后输入:dotnet --info 查看是否安装成功。

   通过ftp把dotnet网站上传到centos服务器。

  然后在linux中切换到.net目录上,cd /home/www/ftpuser/zmcl(这个是我存放网站的路径),然后运行dotnet xxxx.dll

  如果想通过ip或者域名访问,则运行 dotnet zmcl.dll --urls http://*:5000

   开放端口,前面的博文也有介绍,可自行查阅。

4安装守护进程:supervisor

  supervisor:要安装的软件的名称。
  supervisord:装好supervisor软件后,supervisord用于启动supervisor服务。
  supervisorctl:用于管理supervisor配置文件中program和supervisor服务本身。

  ---------------------------------------------------------------------------------------------------------------------

  安装:

  sudo su - #切换为root用户

  yum install epel-release
  yum install -y supervisor

  相关命令:

systemctl enable supervisord #开机启动
systemctl start supervisord #开启
systemctl stop supervisord #停止
systemctl restart supervisord #重启
systemctl status supervisord.service #查看状态

supervisorctl start program_name #启动某个进程(program_name=配置的进程名称)
supervisorctl stop program_name #停止某一进程
supervisorctl reload #重新启动配置中的所有程序
supervisorctl stop all #停止全部进程
supervisorctl update #更新新的配置到supervisord
supervisorctl restart program_name #重启某一进程
supervisorctl #查看正在守候的进程

  

 配置

  配置文件用默认的就可以了,也不用自己去生成了
  默认配置文件 vi /etc/supervisord.conf

  

   拉到最后,这里的意思是 /etc/supervisord.d 文件夹下的所有.ini结尾的文件都可以。

  

  开启远程图形界面: 

  [inet_http_server]           ; inet (TCP) server disabled by default
  port=*:9001               ; (ip_address:port specifier, *:port for all iface)
  username=user                ; (default is no username (open server))
  password=123                 ; (default is no password (open server))

  

  port=web管理界面的访问端口 * 代表所有ip
  username= 登录用户名
  password= 登录密码

    

  设置.net core运行配置

    windows本地新建一个netcore.ini文件,内容如下(特别注意UTF-8格式,这里我坑了很久)

     使用ftp上传至/etc/supervisord.d文件夹下 

     

[program:zmcl]
command=dotnet zmcl.dll --urls http://*:5000     #运行命令
directory=/home/vsftpd/ftpuser/zmcl         #程序路径
environment=ASPNETCORE__ENVIRONMENT=Production
user=root
stopsignal=INT
autostart=true   #自动启动
autorestart=true #3秒自动重启
startsecs=3
stderr_logfile=/var/log/ossoffical.err.log
stdout_logfile=/var/log/ossoffical.out.log

    重启supervisor:

    systemctl restart supervisord #重启

  可参阅:https://www.cnblogs.com/hzzxq/p/9988507.html

  

3、安装Nginx

  Nginx官网:nginx: download

  1、添加源

    sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

  2、安装Nginx

    sudo yum install -y nginx

  3、启动Nginx并设置开机自动运行  

    sudo systemctl start nginx.service  #开启服务

    sudo systemctl enable nginx.service #设置开机启动

  然后访问:http://192.168.0.129/(这是我测试ip地址),呈现如下页面,则安装成功。(默认80端口,如何开发端口,前面以前博文有介绍,可自行查阅)

  

  修改配置文件,访问.net core网站    

  vi /etc/nginx/conf.d/default.conf 

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;
    }
 
    error_page 404 /404.html;
        location = /40x.html {
    }
 
    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }
}

  

  重启Nginx

  nginx -s reload

  .net core配置Nginx可参考:CentOS 7 Nginx部署.NET Core Web应用 - weiwxg - 博客园 (cnblogs.com)

该努力的时候努力 该休息的时候休息
原文地址:https://www.cnblogs.com/zengzhaojin/p/15458216.html