【Django】如何重启由supervisor+gunicorn+nginx部署的Django项目

本文介绍了如何通过编写脚本来自动化重启由supervisor、gunicorn和nginx部署的Django项目。当更新代码时,通常需要手动执行一系列命令,但作者通过编写脚本简化了这一过程,避免了重复操作。脚本中包括使用ps、grep和awk来查找并杀死uwsgi进程,随后利用supervisor重启服务。此外,还提到在编写bash脚本时需要注意的细节,如避免空格和正确引用命令。最后,作者感慨这些提前的努力在关键时刻能带来便利。
摘要由CSDN通过智能技术生成

文章目录

相关操作

真的是懒惰才是人类进步的阶梯…

之前用supervisor和gunicorn部署了一个Django项目

如果更新代码,就要重启代码,就要执行

ps aux | grep supervisor

ps aux | grep gunic

然后kill掉对应的号码…
再进入到python2的虚拟环境,执行

supervisord -c supervisor.conf

操作了十次,已不愿意再操作了…

终于想写脚本…

把很久前复制同事一段拿出来看了看

ps -ef | grep 'uwsgi' | grep -v grep | awk '{print $2}' | xargs kill -9

ps -ef | grep ‘uwsgi’

表示获取包含有uwsgi的内容

| grep -v grep
表示去掉包含有grep的,因为grep的时候,会将grep uwsgi这个也grep出来

awk ‘{print $2}’ 提取到前面值的第二列.第二列就是pid

然后kill -9

管道符 | 有一个功能是,左边的输出值会输入到右边,作为输入值…

这样ps aux | grep 然后kill -9 进程号的过程就可以自动化了

第二步:

在kill后,重新执行supervisor

本来的步骤是workon py2的虚拟环境

然后cd到目录下

执行

supervisord -c supervisor.conf

就可以启动服务了…

其实可以在虚拟环境下获取到 supervisord的路径,
以及对应

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值