继上一篇介绍如何统信uos运行.Net Core项目后,面对实际的开发需要,肯定不能将项目运行命令窗口中,在窗口中,项目一旦异常,会直接结束,所以我们需要将其运行后台,并能在出现异常停止时,重启它。这里我们采用创建服务文件方式实现守护进程
服务文件 demo.service内容

[Unit]
# 描述内容可以随便写
Description= .net core run demo
[Service]
#项目地址
WorkingDirectory=/data/demoApi/
# 主进程模式默认的服务类型,如果项目运行需要加载一些配置文件可以采用oneshotnotify模式
Type=simple
# 用户
User=root
# 用户组-非必须
Group=root
# 启动应用程序的实际命令前端部分dotnet的地址,后面是项目实际运行文件的地址
# 这里使用使用统信UOS系统,所以dotnet的地址如下,其他发行版linux可以自行查找资料
ExecStart=/usr/share/dotnet/dotnet /data/demoApi/demoApi.dll
# 无论因为什么原因停止,都会启动过程
Restart=always
# 重启延迟时间
RestartSec=3
# 它表示系统日志标识符”。 有关守护程序信息记录在此名称下的系统日志中。 
# 还可以使用标识查找进程的 PID。
SyslogIdentifier=myapi-example
# 标识为生产环境
Environment=ASPNETCORE_ENVIRONMENT=Production
# 关闭.NET Core遥测
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
# 多用户模式下,该服务自启
WantedBy=multi-user.target

将上面的内容保存demoApi.service,并放置到某个目录下,通过下列指令可以控制服务的启动停止,并查看服务状态

# 停止api服务
systemctl stop demoApi.service
# 通过enable子命令,在系统启动并达到该服务配置文件
# 指定运行级别例如可能multi-user.target或其他),该服务就会自动启动
# --now 立即启动
systemctl enable --now /data/demoApi/demoApi.service
# 查看api服务的运行状态
systemctl status demoApi.service

原文地址:https://blog.csdn.net/chuanren1991/article/details/134645958

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_27074.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注