安装
pip install gunicorn
获取Gunicorn进程树
用下面的命令获取gunicorn的Master PID
#方法1
pstree -ap|grep gunicorn
#方法2
ps -ef|grep gunicorn
重启Gunicorn进程
HUP(终端断线)信号发出之后,worker进程会进行被杀掉,并启动新的进程,保证源代码的修改会反映进来。master进程不会变。kill -HUP master_pid
Docker打包运行
先写一个flask
from flask import Flask
app = Flask(__name__)
@app.route("/")
def index():
return 'Hello World'
gunicorn --bind=0.0.0.0:8000 run:app
Dockerfile
FROM python:3.8.5
# 构建者的基本信息
MAINTAINER whxcer
# 创建 app 文件夹
RUN mkdir -p /app
# 进入 app 目录
RUN cd /app
# 或 WORKDIR /app
# 在容器内部执行的命令
# 注意:gunicorn 与 gevent 存在版本依赖关系,此外 gevent 依赖的 greenlet 也会有版本问题,尽量使用最新版本即可
# RUN pip install -r requirements.txt -i https://pypi.douban.com/simple/
RUN pip install flask
RUN pip install gunicorn
RUN pip install gevent
RUN pip install greenlet
# 将 linux 系统当前目录下的内容拷贝到容器的 /app 目录下
ADD . /app
EXPOSE 8000
WORKDIR /app
#gunicorn --bind=0.0.0.0:8000 run:app
CMD ["gunicorn", "--bind=0.0.0.0:8000", "run:app"]
docker build . -t 'gunicorn_demo'
docker run -d -p 8000:8000 gunicorn_demo
这时候就起来了