[Service]
Type = forking
PIDFile = /var/run/learninglocker.pid
ExecStart = /usr/bin/npm start
WorkingDirectory = /opt/learninglocker
User = root
Group = root
EnvironmentFile = /opt/learninglocker/environment
StandardOutput = syslog
StandardError = syslog
SyslogIdentifier = learninglocker
LimitCORE = infinity
LimitNOFILE = infinity
LimitNPROC = infinity
TimeoutStartSec = "2min 30s"
[Unit]
After = network.target
[Install]
WantedBy = multi-user.target
这是一个Node应用程序。
当我运行“npm start”时,它会执行并运行四个不同的进程。 但是,当我运行“systemctl start learninglocker.service”时,它会运行几秒钟(即活动状态(正在运行)),然后失败,四个进程再次在后台运行。
我的问题是: 如果我使用“Simple”类型,是否可以?或者我应该使用“forking”?
如果使用“forking”类型,则服务将在没有错误消息的情况下“失败”。