全部操做均在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端口 - 能夠同網段進行調試。
大功告成!