.NET Core项目部署到Linux(Centos7)(七)启动和停止.NET Core项目
目录
1.前言
2.环境和软件的准备
3.创建.NET Core API项目
4.VMware Workstation虚拟机及Centos 7安装
5.Centos 7安装.NET Core环境
6.发布.NET Core项目到Linux
7.启动和停止.NET Core项目
8.为.NET Core项目创建Supervisor进程守护监控
9.防火墙配置,允许外网或局域网访问.NET Core站点
10.总结
1.普通模式启动和停止站点,首先进入www目录,利用dotnet命令定义端口配置及环境,然后启动站点
#进入www目录 cd /var/www #启动站点,自定义端口号,运行环境 dotnet Demo.Net.Core.dll --urls="http://*:8081;http://*:8082" --environment=Development #访问启动的站点 curl http://localhost:8081/weatherforecast #停止站点 Ctrl+c
注意:
①、这里urls配置,如果需要局域网或者外网访问,不能填成urls="http://localhost:8081;http://localhost:8082"
②、另外这种启动方式有个弊端就是,关闭Xshell的会话之后,站点同时会自动关闭,无法访问
③、执行启动命令,一定要指定dll的路径或者进入站点目录,否则会启动不成功
2.后台进程模式启动和停止站点,避免关闭会话后,站点无法访问
#进入www目录 cd /var/www #启动站点,自定义端口号,运行环境 nohup dotnet Demo.Net.Core.dll --urls="http://*:8081;http://*:8082" --environment=Delopment > /dev/null 2>&1 & #查看相关进行 ps -aux | grep "Demo.Net.Core.dll" #访问启动的站点 curl http://localhost:8081/weatherforecast #关闭站点进程,当前进程直接使用Ctrl+c,这里的35520是之前开启的Dotnet 进程ID kill 35520
这里使用后台进程,关闭Xshell也不会关闭站点,在当前进程,停止站点直接使用Ctrl+c,否则需要找出进程ID,然后KILL进程。
/dev/null:/dev/null相当于执行了command 1 > /dev/null。执行command产生了标准输出stdout(用1表示),重定向到/dev/null的设备文件中
/dev/null可以理解为/dev路径下的空文件;该命令将command命令的标准输出输出到空文件中
2>&1:可以理解为执行command产生的标准输出重定向到文件中,标准错误也重定向到文件中,期间只打开一次文件,&1的含义就可以理解为用标准输出的引用,引用的就是重定向标准输出产生打开的文件。
注意:后台进程虽然可以再Xshell关闭后还能运行,但是当系统关机重启后,进程就没有了,这个时候还是需要手动启动,所以下一篇文章将会介绍为dotnet创建守护进程的方式来保证开机就能访问站点