扩大
缩小
  

Linux学习之十--.Net Core环境搭建以及Nginx的搭建

一、Centos7下.Net Core 环境安装:

链接:https://www.microsoft.com/net/core#linuxcentos

按照步骤来:

yum install libunwind libicu
curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?LinkID=835019

mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet
ln
-s /opt/dotnet/dotnet /usr/local/bin

就这样,.Net Core环境搭建好了,可以使用dotnet --version查看版本号。

可以把我们的.Net Core程序上传到服务器上,使用命令dotnet xxx.dll运行我们的程序。 

二、使用Nginx代理转发

参考资料:https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-centos-7

1.添加CentOS 7 EPEL存储库:

yum install epel-release

2.Nginx存储库安装在您的服务器上,使用以下yum命令安装Nginx:

yum install nginx

3.启用Nginx,设置开机启动

systemctl start nginx #启用Nginx 

systemctl enable nginx #设置开机启动

4.使用firewall或iptables开发80端口,这样就可以使用http://ip地址 访问,看到如下这个界面就说明Nginx服务开启成功! 

5.配置转发规则:

 修改配置,监听5000端口:路径为:/etc/nginx/nginx.conf,修改如下:

location/{        
        # 传递真实IP到后端
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass  http://localhost:5000;
}

三、使用Supervisor守护进程

参考链接:http://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html

3.1安装Supervisor :

yum install python-setuptools

easy_install supervisor 

mkdir /ect/supervisor #创建目录

echo_supervisord_conf > /etc/supervisor/supervisord.conf  #配置文件

3.2配置Supervisor:

在/etc/supervisor/confg.d/(如果没有,就创建目录)下新建个名字为CManage.conf(名字xxx.conf就行)配置,

内容如下:

复制代码
[program:CManage]
command=dotnet CManage.dll  #要执行的命令
directory=/home/wwwroot #命令执行的目录
environment=ASPNETCORE__ENVIRONMENT=Production #环境变量
user=www-data  #进程执行的用户身份
stopsignal=INT
autostart=true #是否自动启动
autorestart=true #是否自动重启
startsecs=1 #自动重启间隔
stderr_logfile=/var/log/CManage.err.log #标准错误日志
stdout_logfile=/var/log/CManage.out.log #标准输出日志
复制代码

3.3配置完了之后,需要修改/etc/supervisor/supervisord.conf文件:

最底部的[include]修改为:

[include]
files = /etc/supervisor/conf.d/*.conf 

然后需要把supervisord重新加载:

supervisord -c /etc/supervisor/supervisord.conf

3.4打开服务:

1
ps -ef | grep CManage

3.5Supervisor 的常用命令:

supervisorctl shutdown #关闭所有任务

supervisorctl stop|start program_name  开启或者停止任务

supervisorctl status #查看所有任务状态

3.6这时候Supervisor相关配置完了,设置开机启动,这样就不用每次重启服务器还需要启用守护进程了。

在/usr/lib/systemd/system/目录新建个supervisord.service文件,内容如下:

复制代码
  # dservice for systemd (CentOS 7.0+)
  # by ET-CS (https://github.com/ET-CS)
  [Unit]
  Description=Supervisor daemon

  [Service]
  Type=forking
  ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
  ExecStop=/usr/bin/supervisorctl shutdown
  ExecReload=/usr/bin/supervisorctl reload
  KillMode=process
  Restart=on-failure
  RestartSec=42s

  [Install]
  WantedBy=multi-user.target
复制代码

设置开机启动:

systemctl enable supervisord  设置为开机启动

 

四、Supervisor UI 管理台

Supervisor 默认给我们提供了一个图形界面来供我们管理进程和任务,我们可以修改配置文件/etc/supervisor/supervisord.conf,添加inet_http_server 节点:

然后就可以通过界面来查看运行的进程了:

 

 

posted @   风筝遇上风  阅读(2889)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
历史上的今天:
2015-11-02 07OC之KVC、KVO
点击右上角即可分享
微信分享提示