全部操做均在ubuntu下执行(Gunicorn + Gevent不支持win环境!)python
pip install gunicorn gevent
docker
能够输入如下命令sudo apt-get install python3.6-dev
flask
gunicorn -w 4 -b 192.168.1.79:4000 run:app
ubuntu
-w 4是指预约义的工做进程数为4 -b 192.168.1.79:4000指绑定地址ip和端口 run是flask的启动python文件,app则是指flask应用程序实例
这样就证实gunicorn gevent 能够使用!!segmentfault
requirements.txt文件 - 项目所应用的包名写入
gunicorn.conf.py文件 - 定义gevent库及进程数量
Dockerfile文件 - docker打包镜像的命令步骤app
能够使用命令进行写入项目所须要的应用包pip freeze > requirements.txt
异步
workers = 5 # 定义同时开启的处理请求的进程数量,根据网站流量适当调整 worker_class = "gevent" # 采用gevent库,支持异步处理请求,提升吞吐量 bind = "0.0.0.0:8080" # 这里8080能够随便调整
FROM python:3.6 WORKDIR /usr/src/app RUN pip install --upgrade pip COPY requirements.txt ./ RUN pip install -r requirements.txt COPY . . CMD ["gunicorn", "run:app", "-c", "./gunicorn.conf.py"]
su root
- 输入本机密码工具
输入命令:docker build -t 'docker_flask' .
测试
过程可能会很是漫长...(取决于你的项目环境包的多少)网站
看到这个就证实打包完成
查看打包好的镜像docker images
使用命令进行启动镜像
(为了防止8080端口占用能够用8088进行映射)docker run -itd -p 8088:8080 docker_flask
-i 交互式操做 -t 终端 -d 后台运行
查看运行中的docker容器docker ps
容器已经开启。能够使用本地ip + 8088进行测试
记得开启8088端口 - 能够同网段进行调试。
大功告成!