【发布时间】:2020-07-05 10:18:44
【问题描述】:
我想让 Gunicorn 成为一个守护进程。
我知道我可以使用 supervisor/systemd 来做到这一点,但是对于这两个方面,我的 Flask 应用程序需要在 virtualenv 中,在我的情况下它不是。
Gunicorn 必须成为守护进程。我怎样才能做到这一点?
【问题讨论】:
标签: virtualenv ubuntu-18.04 daemon systemd supervisord
我想让 Gunicorn 成为一个守护进程。
我知道我可以使用 supervisor/systemd 来做到这一点,但是对于这两个方面,我的 Flask 应用程序需要在 virtualenv 中,在我的情况下它不是。
Gunicorn 必须成为守护进程。我怎样才能做到这一点?
【问题讨论】:
标签: virtualenv ubuntu-18.04 daemon systemd supervisord
它比你想象的要简单得多,在末尾添加--daemon
例子:
web: gunicorn -w 3 -k uvicorn.workers.UvicornWorker main:app --daemon
示例 2:
gunicorn --workers=2 'test:create_app()' --daemon
示例 3:
gunicorn --paste development.ini -b :8080 --chdir /path/to/project --daemon
【讨论】:
pkill gunicorn 停止所有正在运行的 gunicorn 守护进程。但是如果你想停止一个特定的守护进程,首先 grep ps ax | grep gunicorn 和 sudo lsof -t -i tcp:port_here | xargs kill -9 或者你也可以对端口使用 kill 。