.Net Core 在Linux系统下创建服务

将Net Core项目部署在Linux系统下,每次更新启动都很麻烦,有没有什么快捷的方法呢,请看下面。

1.新建一个***.service文件。

例如,项目发布好的dll名称为Test.dll,我们就可以新建一个Test.service文件

2.在Test.service文件中复制以下文本,根据需要可修改内容

复制代码
[Unit]
#服务名称
Description=Test


[Service]

#服务所在的文件夹
WorkingDirectory=/home/Test
#运行网站命令
ExecStart=/usr/bin/dotnet /home/Test/Test.dll
#服务崩溃时,是否重启服务
Restart=always
#如果服务崩溃,10秒后重启服务
RestartSec=10
#以服务器上的哪个账号运行服务,这里使用root账号
User=root
#系统日志标识,可以随便录入,建议跟网站或服务的名字相同,这样比较好识别
SyslogIdentifier=Test
#设置环境变量,这里设置运行为生产环境
Environment=ASPNETCORE_ENVIRONMENT=Production
#服务运行时是否打印临时信息
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
 
[Install]
#服务运行在linux上的哪个level,这里选择多用户命令行,也就是第3级别
WantedBy=multi-user.target

3.当将以上service文件创建好后,用以下命令启动、查看状态等,Test.service可根据各自需要进行修改

复制代码
systemctl enable Test.service   #开机启动

systemctl start Test.service    #启动

systemctl restart Test.service   #重启

systemctl stop Test.service    #停止

systemctl status Test.service   #检查服务状态  running表示服务器正在运行,fail表示程序出错

systemctl list-units --type=service      #列出所有的服务

4.当部署出现失败时,可通过以下命令查看具体日志内容:

sudo journalctl -fu Test.service

相关推荐
泽虞5 小时前
《Qt应用开发》笔记
linux·开发语言·c++·笔记·qt
报错小能手5 小时前
linux学习笔记(21)线程同步——互斥锁
linux·笔记·学习
一只积极向上的小咸鱼6 小时前
Windows中通过wsl运行Ubuntu
linux·运维·ubuntu
爱吃汽的小橘6 小时前
异步串口通信和逻辑分析仪
运维·服务器·网络·单片机·嵌入式硬件·fpga开发
ayaya_mana7 小时前
Linux环境下Node.js任意版本安装与pnpm、yarn包管理
linux·node.js·vim
乌龙玛奇朵5197 小时前
Finalshell建立连接
linux
Maple_land7 小时前
Linux进程第八讲——进程状态全景解析(二):从阻塞到消亡的完整生命周期
linux·运维·服务器·c++·centos
嵌入式分享7 小时前
嵌入式分享#41:RK3576改UART波特率【精简版】
linux·嵌入式硬件·ubuntu·嵌入式
爱吃生蚝的于勒7 小时前
【Linux】零基础学会Linux之权限
linux·运维·服务器·数据结构·git·算法·github