答案1
除了最新版本的 ubuntu 外,大多数版本都使用 upstart,这似乎是一个很好的解决方案。我对 systemd 不太熟悉,如果您的构建使用它,您可能需要一个完全不同的版本。这就是发行版和版本很重要的原因。
这似乎是一个好的开始 - 你应该读一下。我会做些不同的事情,为了发布一个独立的答案,我在写的时候附上了一个脚本。我建议看看这两个,以及新贵文档调整它以更好地满足您的需求。我注意到您以 root 身份运行它 - 您确实应该以特定用户身份执行此操作。我做了一些对我来说有意义的更改 - 如果您确定这有效,您可能希望将控制台日志更改为控制台无,并且我设置了明确的启动和停止命令。这假设您有一个名为仪表板的用户 - 您可以省略 setuid 和 setguid 命令。
没有真正测试过,但它本身是有道理的。将其放入/etc/init/dashing.conf
respawn
console log
start on runlevel [23]
stop on [!23]
setuid dashboard
setgid dashboard
script
chdir /home/dashboard/dashboard/
dashing start
end script