1、添加demo.service
demo.service
作为示例,是我们手动添加到 Linux 系统中用于管理 demo服务的 systemd 服务单元文件。它定义了如何启动、停止、重启和检查 demo服务。
vim /usr/lib/systemd/system/demo.service
demo.service 的具体内容
[Unit]
Description=The demo service is the backend service of the XX project
After=syslog.target network.target
[Service]
User=root
Group=root
Type=forking
PIDFile=/run/demo.pid
ExecStart=java -jar /usr/local/demo/demo-1.0.0.jar"
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /var/run/demo.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /var/run/demo.pid)"
[Install]
WantedBy=multi-user.target
2、各部分的详解:
[Unit] 段
Description
: 服务的描述。这里说明这是 nginx 的服务。After
: 在这些目标之后启动服务。通常,你会希望在系统日志和网络服务启动后再启动 nginx。
[Service] 段
User=root
设置运行服务的用户为rootGroup=root
设置运行服务的组为rootType
: 服务类型。forking
表示这是一个传统的 UNIX 后台服务,会启动一个主进程和一些子进程。PIDFile
: PID 文件的位置,用于存储主进程的 PID。ExecStart
: 启动服务的命令。这里使用-g
参数来指定 demo以非守护进程模式运行。ExecReload
: 当服务重新加载配置时运行的命令。这里使用HUP
信号来通知 demo 重新加载配置。
[Install] 段
WantedBy
: 定义此服务在哪些目标下被启动。这里设置为多用户目标,意味着在多用户模式下,此服务会被自动启动。