Supervisord:有没有办法让孩子接触?

Supervisord:有没有办法让孩子接触?,第1张

概述我正在设置一个服务器来托管一个Django应用程序,它具有: > uWSGI应用程序由ubuntu的uWSGI init脚本启动 > celeryd由supervisord开始 所以我正在编写一个部署脚本,它将: >从git中提取代码 >迁移数据库 >告诉uWSGI重新启动,这样它就会获取新代码. >告诉celeryd重新启动,因此它也将获取新代码. uWSGI具有以下配置功能: touch-re 我正在设置一个服务器来托管一个Django应用程序,它具有:

> uWsgi应用程序由ubuntu的uWsgi init脚本启动
> celeryd由supervisord开始

所以我正在编写一个部署脚本,它将:

>从git中提取代码
>迁移数据库
>告诉uWsgi重新启动,这样它就会获取新代码.
>告诉celeryd重新启动,因此它也将获取新代码.

uWsgi具有以下配置功能:

touch-reloadgracefully reload the uWsgi stack when a file/directory changes.

因此,我的脚本由非特权用户运行,在该用户下运行所有​​应用程序的进程.

要重新启动uWsgi,我只需触摸〜/ .restart_uwsgi即可.

有没有办法我可以做同样的事情为celeryd在supervisord下运行而不授予对非特权用户的sudo访问权限以便他可以supervisorctl重启celeryd?

解决方法 由于我还没有找到更好的方法,这就是我现在正在做的事情:

# restart_my_proc.sh:#!/bin/shsupervisorctl restart <my_proccess_name>chmod +x restart_my_proc.sh# sudoers:<site_user> ALL= nopASSWD:/path/to/restart_my_proc.sh# my_deploy_script.shsudo /path/to/restart_my_proc.sh

所以我使用的是sudo,而不是最好的解决方案,但它确实有效.

如果有人对此有更好的答案,我很乐意改变接受的答案.

总结

以上是内存溢出为你收集整理的Supervisord:有没有办法让孩子接触?全部内容,希望文章能够帮你解决Supervisord:有没有办法让孩子接触?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1029172.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存