在ubuntu服务器上创建一个 Systemd 服务单元文件以启动和管理您的应用程序

在Ubuntu服务器上创建一个环境的配置服务文件

创建服务单元文件:

在服务器上使用文本编辑器(如 Nano 或 Vim)创建一个新的服务单元文件。

例如,使用以下命令创建一个名为 my-webapi.service 的新文件:

复制代码
sudo vim /etc/systemd/system/my-webapi.service

编辑服务单元文件:

复制代码
[Unit]
Description=My Web API Service
After=network.target

[Service]
WorkingDirectory=/path/to/your/published/files
ExecStart=/usr/bin/dotnet     /path/to/your/published/files/YourWebApiProject.dll
Restart=always
RestartSec=10
SyslogIdentifier=my-webapi
User=your_username
Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]
WantedBy=multi-user.target
字段 描述
Description 服务的描述
After 定义服务应该在哪些其他服务之后启动
WorkingDirectory 指定应用程序的工作目录
ExecStart 指定要执行的命令,这里是启动您的 .NET Core 应用程序
Restart 指定服务在何种情况下应重新启动
RestartSec 定义在服务失败后重新启动之前的等待时间
SyslogIdentifier 定义服务在系统日志中的标识符
User 定义服务应以哪个用户的身份运行
Environment 定义应用程序的环境变量

启动服务:

使用以下命令启动 Systemd 服务:

复制代码
sudo systemctl start your-service-name.service

验证:

检查服务是否正在运行:

复制代码
sudo systemctl status your-service-name.service
相关推荐
linweidong2 小时前
C++ 模块化编程(Modules)在大规模系统中的实践难点?
linux·前端·c++
invicinble6 小时前
对linux形成认识
linux·运维·服务器
小Pawn爷6 小时前
14.VMmare安装ubuntu
linux·运维·ubuntu
技术路上的探险家6 小时前
8 卡 V100 服务器:基于 vLLM 的 Qwen 大模型高效部署实战
运维·服务器·语言模型
半桔7 小时前
【IO多路转接】高并发服务器实战:Reactor 框架与 Epoll 机制的封装与设计逻辑
linux·运维·服务器·c++·io
绵绵细雨中的乡音7 小时前
深入理解 ET 与 LT 模式及其在 Reactor 模型中的应用
服务器·网络·php
engchina7 小时前
WSL Ubuntu で Kubernetes v1.34.2 + Docker 環境を構築する
ubuntu·docker·kubernetes
HABuo7 小时前
【linux文件系统】磁盘结构&文件系统详谈
linux·运维·服务器·c语言·c++·ubuntu·centos
Howrun7778 小时前
关于Linux服务器的协作问题
linux·运维·服务器
小白同学_C8 小时前
Lab3-page tables && MIT6.1810操作系统工程【持续更新】
linux·c/c++·操作系统os