根据this article,谷歌提到
You might see the following actions in public images, but do not follow their example:
- Using a process management system such as supervisord to manage one or several apps in the container.
我知道使用supervisord在一个容器中管理多个应用程序有很多缺点。如不适合自动校准、难以进行健康检查等。。 但它还有其他缺点吗?我想知道主管如何处理PID 1问题
原因有很多,但有几个是:
其中一些是个人的,但你们可以看到,在容器中使用多个应用程序是不好的做法
更多技术性的东西
supervisord和Docker都是流程经理,他们都可以做日志转发,重启崩溃的工作人员。如果您在docker容器内运行supervisord,您将面临服务问题:
如果您将使用supervisord对每个容器运行一个进程,那么除了增加内存消耗之外,您不会获得太多好处
要重新启动进程,只需重新启动docker容器
运行多个进程可能会产生监视问题
针对单个supervisord流程的健康检查请求将分发给员工,这可能会隐藏不健康的目标
工人事故是隐藏的,使用任何类型的监控都很难了解
负载平衡将更加困难,因为将有多个级别的负载平衡
当您对docker环境的控制有限时,您可以使用supervisord或pm2
相关问题 更多 >
编程相关推荐