在 Ubuntu 18.04 里,为一个服务写启动脚本的最好的方式是?

2018-11-13 15:14:44 +08:00
 Livid
有一些用了好多年的 init.d 脚本,最近觉得似乎应该更新一下了。
7756 次点击
所在节点    Ubuntu
48 条回复
hei1000
2018-11-13 15:15:31 +08:00
不是 systemd ?我们这边 16.04 是这样的
Mithrandir
2018-11-13 15:17:29 +08:00
肯定是 systemd service 啊
mason961125
2018-11-13 15:17:31 +08:00
systemd
shallyy
2018-11-13 15:17:36 +08:00
好奇站长同时使用几种系统?
TimLang
2018-11-13 15:17:36 +08:00
正在搞 tengine 的 init.d 脚本就刷到这篇帖子。。
ffeii
2018-11-13 15:19:33 +08:00
systemd
Livid
2018-11-13 15:20:13 +08:00
@shallyy 我家里有超过 10 台电脑,基本上主流的系统都覆盖了。

V2EX 的开发环境我在各种系统上都搭建过,Windows / Ubuntu / macOS ……
reticentfat
2018-11-13 15:42:17 +08:00
膜拜大佬,我还以为是生产环境,原来是家里
lfzyx
2018-11-13 15:46:44 +08:00
systemd
chinvo
2018-11-13 15:47:02 +08:00
systemd,自带 watchman、资源限制等小玩意儿
julyclyde
2018-11-13 15:52:43 +08:00
@TimLang tengine 的你直接抄 nginx 的不就得了?
xuboying
2018-11-13 15:52:48 +08:00
看到 18,我还以为 16 的 systemd 过时了,已经要讨论 docker 概念了, 结果看到 sysV...

个人觉得 systemd 挺好的,写个 unit 配置就能用了。init.d 里要熟悉 shell 脚本。(变相的降低了用户的入门水平)
另外,sysV 其实只能启动单一服务,多服务管理还是非常难写的。这点 systemd 解决了

PS 同求"最好"的方式
Cbdy
2018-11-13 15:55:00 +08:00
这种场景正好用 pm2
https://pm2.io/doc/en/runtime/guide/process-management/#manage-any-application-type
脚本前台启动,作为 pm2 的一个 app 启动
pm2 的 daemon 进程用 systemd 管理( pm2 startup 一下即可)
est
2018-11-13 15:57:38 +08:00
systemd


那些说 docker pm2 的。。你们想没想过 dockerd 和 node 是怎么启动的。。。。。

为啥要舍弃原生的去用二手的?况且原生自带的功能也不弱。
liuxu
2018-11-13 15:58:48 +08:00
果断 systemd,不过一些小程序我还是 rc.local
tmly200
2018-11-13 15:59:55 +08:00
service?
flowfire
2018-11-13 16:01:37 +08:00
我怎么记得可以在 crontab 里写启动脚本。。。
boris1993
2018-11-13 16:11:59 +08:00
感觉 systemd 就足够用了
Hardrain
2018-11-13 16:23:03 +08:00
systemd unit
luozic
2018-11-13 16:30:17 +08:00
Supervisord 进程守护

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/507409

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX