在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
相关推荐
Championship.23.244 小时前
Linux 3.0 锁机制与故障排查详解
linux·运维·服务器
天疆说4 小时前
Zotero Connector 在 Edge 里找不到桌面 Zotero(Linux / Zotero 9.0.6 / Edge 150)
linux·前端·edge
风123456789~6 小时前
【Linux专栏】ls 排除某个文件
linux·运维·服务器
IT曙光6 小时前
ubuntu apt-get离线源制作
linux·ubuntu
其实防守也摸鱼6 小时前
运维--学习阶段问题解答(1)(自测)
linux·运维·服务器·数据库·学习·自动化·命令模式
懒鸟一枚7 小时前
深入理解 Linux 内存、Swap 交换分区与分页机制的关系
java·linux·数据库
玖玥拾8 小时前
C# 语言进阶(十五)C# 游戏服务端 MySQL 数据库
服务器·开发语言·网络·数据库·mysql·c#
土星云SaturnCloud8 小时前
边缘计算驱动绿氢生产过程智能寻优:电解槽级实时优化技术解析
服务器·人工智能·ai·边缘计算
Darkwanderor8 小时前
对Linux的进程控制的研究
linux·运维·c++
Web极客码9 小时前
突破并发瓶颈:云端高性能架构如何赋能海外 AI Agent 矩阵的高效产出
服务器·人工智能·架构