supervisor支持python虚拟环境venv
Posted blackmatrix
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了supervisor支持python虚拟环境venv相关的知识,希望对你有一定的参考价值。
在项目中使用supervisor时,如何在虚拟环境下启动一直存在些小问题。
试过sh脚本,在脚本中激活虚拟环境,这样虽然可以正常启动,但是supervisor无法正确的结束进程,必须手动结束。
反复摸索后,发现其实很容易实现,稍微修改下supervisor的配置即可。
假设,我们的虚拟环境在项目根目录下的venv中。
那么在对supervisor的配置做如下修改,不需要修改的地方略去。
directory=/home/pepper/code/jadetower_health
上面这个指向项目的根目录
command=venv/bin/python gunicorn -w 6 -b 0.0.0.0:8001 project.wsgi --access-logfile logs/gunicorn.log
command 启动命令不直接使用python,而是使用虚拟环境里的python,这里是venv/bin/python。
最后紧跟需要启动的脚本,我这里是用的gunicron。
最后,更新supervisor配置
supervisorctl update
然后重启
supervisorctl reload
这个时候项目已经在虚拟环境中运行。
以上是关于supervisor支持python虚拟环境venv的主要内容,如果未能解决你的问题,请参考以下文章
使用Nginx+Gunicorn+virtualenv+supervisor来部署django项目