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

2018-11-13 15:14:44 +08:00
 Livid
有一些用了好多年的 init.d 脚本,最近觉得似乎应该更新一下了。
7604 次点击
所在节点    Ubuntu
48 条回复
ech0x
2018-11-13 16:32:35 +08:00
systemd 吧......
ray1888
2018-11-13 16:36:26 +08:00
systemd 吧, 比写 system v 一堆不知道什么的东西简单多多了
Tink
2018-11-13 16:39:02 +08:00
supervisord 够用
zhouyut001
2018-11-13 16:49:19 +08:00
十几台电脑,第一印象是开网吧的
liangzi
2018-11-13 16:56:07 +08:00
个人用户 觉得 systemd 现在是主流了吧 可以控制的方面多 当然需要掌握的知识也随之增多
平时自己都是 crontab+anacrontab 启动各种备份(个人需求没有多少)
有必要的话就 systemd 启动一个脚本(PS:openSUSE 自带个 after-local.service 静态的 默认添加个 after-local 就开机自动启动了)
xuboying
2018-11-13 17:59:59 +08:00
@est #14 每一次技术变更都会有抵触到没办法只能接受,sysV 到 systemd 就是一次,到 docker 也是这样,普通用户也只能被动接受。也许过几年就是满大街 docker 了。我刚刚学会 systemd 部署就有外地同事强推 docker,公司层面也支持他们,用 systemd 的只能再学一遍。
est
2018-11-13 18:01:11 +08:00
@xuboying docker 就是个渣。container 内部 pid1 问题拖了许久也才解决。
shyling
2018-11-13 18:02:11 +08:00
想稳定跑的用 systemd,毕竟要写配置文件,systemctl daemon-reload 也略麻烦点。

跑跑测试测试的用 pm2,比较无脑

docker 是另外的需求。。
zqguo
2018-11-13 18:06:35 +08:00
docker 也可以的
iwtbauh
2018-11-13 18:08:33 +08:00
必须是 LSB service 啊

http://refspecs.linuxfoundation.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/tocsysinit.html

建议不要被 systemd 这种东西套牢
xuboying
2018-11-13 18:14:55 +08:00
@est #27 个人对 docker 还在一知半解状态,这个帖子也不讨论 docker 了,只是感觉 google 的野心很大,基于 docker 技术做了微服务框架,取代了过去的 go/erlang 模式。(变相降低各大互联网公司进场门槛),可以以后在 docker 的相关帖子里再聊。
hujianxin
2018-11-13 18:42:42 +08:00
我倒是建议 supervisor,已经经受历史考研了,而且还跨平台
MeteorCat
2018-11-13 18:44:33 +08:00
systemctl unit +1
TimePPT
2018-11-13 18:48:51 +08:00
@hujianxin supervisor +1,用顺手了懒得换了。
0312birdzhang
2018-11-13 19:42:07 +08:00
systemd 最优选
MonoLogueChi
2018-11-13 19:55:06 +08:00
supervisor
qgy18
2018-11-13 19:59:59 +08:00
flowfire
2018-11-13 20:06:44 +08:00
@qgy18 #37 是的
est
2018-11-14 10:13:24 +08:00
@xuboying google 野心大跟 docker 什么关系。。。。你懂得多你说说呗。
julyclyde
2018-11-14 11:55:29 +08:00
除了 init/systemd 以外,其它都不能保证它自己持续运行,从而也就没办法保证它自己能够实施“保护好下属服务”的职责

唯有 PID=1 的进程受内核的特殊关照

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

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

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

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

© 2021 V2EX