除了 supervisor 还有什么靠谱好用的容器内进程管理工具吗

2022-09-21 13:31:10 +08:00
 dzdh

不想有过多依赖,尽可能的减少镜像体积。

比如 supervisor 需要 python 环境。pm2 需要 node 环境。可是程序是 php 的....

2376 次点击
所在节点    Docker
29 条回复
lovepocky
2022-09-21 13:32:29 +08:00
systemd
Jirajine
2022-09-21 13:35:53 +08:00
runit 、s6
6IbA2bj5ip3tK49j
2022-09-21 13:46:28 +08:00
你容器用法就错了。
dzdh
2022-09-21 13:53:12 +08:00
@lovepocky k8s 里不太适合吧
dzdh
2022-09-21 14:13:30 +08:00
@Jirajine runit 测试接收不到退出信号

s6 是个啥。压缩包解压只有 /package 和 /command 。容器镜像里没有 /init 命令
julyclyde
2022-09-21 14:17:52 +08:00
首先你在 docker 里用 supervisord (及同类产品)就用错了
superchijinpeng
2022-09-21 14:26:57 +08:00
为什么在容器里这么用?需要多个进程可以 Multi Containers 啊
lambdaq
2022-09-21 14:31:20 +08:00
https://skarnet.org/software/s6/ 这个看他简介把 supervisord 和 runit 都喷了一遍,就选他

@julyclyde @xgfan 以前我也这么认为,但是现在用错的人太多感觉要改字典了
dzdh
2022-09-21 14:39:42 +08:00
@superchijinpeng
@julyclyde

nginx+fpm 在一个 pod 里开两个容器共享存储然后 fastcgi_pass 127 么
Jirajine
2022-09-21 15:29:52 +08:00
@dzdh runit 和 s6 可以作为也可以不作为 pid 0 ,很多多进程的容器都是这么用的。
virusdefender
2022-09-21 15:30:31 +08:00
有个 go 写的 supervisor ,但是几年前用的时候有很多 bug ,现在不知道咋样了 https://github.com/ochinchina/supervisord
dzdh
2022-09-21 15:38:45 +08:00
@virusdefender 这个看了看代码.....emm 咋说呢 有些地方的处理逻辑[可能]会发生意外导致进程退出没太敢用。我再去看看。
zhoujinjing09
2022-09-21 16:17:33 +08:00
julyclyde
2022-09-21 17:01:01 +08:00
@dzdh 为什么要 nginx+fpm 呢?你就 pod 里只运行 fpm 不就得了
nginx 让 k8s ingress 来承担
tcsky
2022-09-21 20:20:10 +08:00
MengiNo
2022-09-21 20:48:26 +08:00
纯 docker 也有 docker compose 啊,自始至终感觉没啥必要往容器里塞两个(除了新手固有印象和一些“方便”党)。非得说,往 fpm 容器里装个 crond 也比装个 nginx 能接受点,毕竟从方便的角度纯 docker 确实欠缺这块。
ClericPy
2022-09-21 20:59:57 +08:00
没看到用容器的时候还想说 supervisord 就是平时玩玩用, 认真起来还是 systemd 那套. 看到容器... 总感觉怪怪的, 今天我手写个守护进程来保证同镜像更新代码热重启都觉得自己罪恶感, 用 supervisor 在容器里守护总感觉味道不太正
wxyrrcj
2022-09-22 07:51:49 +08:00
joker github 搜下
julyclyde
2022-09-22 08:43:12 +08:00
@lambdaq 哈哈,改字典
我想起小时候学的“aiban 呆板”后来变成“daiban”了
julyclyde
2022-09-22 08:43:47 +08:00
@ClericPy 镜像作为一个“发行”单位,表面版本号还是应该和内涵版本号一致的。内更新不太好

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

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

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

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

© 2021 V2EX