Flask Nginx Gunicorn Centos7 环境部署,将项目上线

原创 2018年04月17日 10:34:13

1、创建一个虚拟环境

cd /home/
mkdir flaskProject
cd ./flaskProject/
pip3 install virtualenv
virtualenv -p python3 --no-site-packages venv

2、创建启动文件,如何创建项目,不在这里介绍

# wsgi.py
from flask import app
    
application = app
if __name__ == '__main__':
    application.run()

3、进入一个虚拟环境

source flaskProject/bin/activate

4、安装并测试Gunicorn是否能启动你的项目服务

pip3 install gunicorn
gunicorn --bind 0.0.0.0:8000 wsgi:application

5、创建一个 Gunicorn Systemd Service 文件

vim /etc/systemd/system/gunicorn.service
[Unit]                                                                                                  
Description=gunicorn daemon
After=network.target

[Service]
User=root
Group=nginx
WorkingDirectory=/root/github/FamilyAll/FamilyApi/
ExecStart=/root/github/FamilyAll/FamilyApi/venv/bin/gunicorn -w 4 -b 0.0.0.0:8000 wsgi:application

[Install]
WantedBy=multi-user.target
# systemctl start gunicorn
# systemctl enable gunicorn
6、配置nginx代理通过Gunicorn
# vim /etc/nginx/nginx.conf
 user nginx;
 worker_processes auto;
 error_log /var/log/nginx/error.log;
 pid /run/nginx.pid;
 include /usr/share/nginx/modules/*.conf;
 events {
     worker_connections 1024;
 }
 http {
     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                       '$status $body_bytes_sent "$http_referer" '
                       '"$http_user_agent" "$http_x_forwarded_for"';
     access_log  /var/log/nginx/access.log  main;
     sendfile            on;
     tcp_nopush          on;
     tcp_nodelay         on;
     keepalive_timeout   65;
     types_hash_max_size 2048;
     include             /etc/nginx/mime.types;
     default_type        application/octet-stream;
     server {
         listen       80 default_server;
         listen       [::]:80 default_server;
         server_name  _;
         root         /usr/share/nginx/html;
 
         # Load configuration files for the default server block.
         include /etc/nginx/default.d/*.conf;
 
         location / {
         }
 
         error_page 404 /404.html;
             location = /40x.html {
         }
                                                                                                                                                                                                       
         error_page 500 502 503 504 /50x.html;
             location = /50x.html { 
         }   
     }   
     server {
         listen 8080;
         server_name www.wengdell.com; # 这是HOST机器的外部域名,用地址也行
     
         location / {
             proxy_pass http://127.0.0.1:8000; # 这里是指向 gunicorn host 的服务地址
             proxy_set_header Host $host;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         }   
     
     }
7、开启nginx服务并开机自启
# systemctl start nginx
# systemctl enable nginx





有朋自远方来——技术书籍翻译的传播学体验

有朋自远方来——技术书籍翻译的传播学体验熊节(本文首发于《中华读书报》2004年2月4日号)  ●翻译就是作者的魂灵借着译者的纸笔转世重生。遗憾的是,不论作为译者、读者还是编辑,我手上经过的每一个译本...
  • gigix
  • gigix
  • 2004-02-07 22:52:00
  • 3376

python 在centos上用nginx+Gunicorn部署 flask 项目

大家在学习Python的时候常常都是输入 python 文件名.py11 这样启动小脚本 但实际应用中往往没有那么简单,因为通常都要多线程处理并发,处理头部,这时就需要nginx和Gun...
  • qq_33775402
  • qq_33775402
  • 2017-05-26 00:10:50
  • 1910

Django Nginx Gunicorn Centos7 环境部署,将项目上线

序言:相信很多人遇到了这样的问题,将自己的django项目完成后,准备部署到Linux上,遇到了很多的麻烦,网上的教程大多数使用python2的django项目,一旦用于python3后,就会出很多的...
  • lanhaixuanvv
  • lanhaixuanvv
  • 2017-10-17 11:34:21
  • 928

flask运行环境搭建(nginx+gunicorn)

nginx gunicorn flask
  • ahywg
  • ahywg
  • 2017-03-04 13:58:04
  • 1437

网站部署过程 Nginx + Gunicorn +Supervisor +Flask

目录 目录 部署思路 前期准备 注册域名 购买VPS 服务器端设置 安装依赖环境 新建项目 创建虚拟环境 安装相关依赖 配置环境变量 配置Nginx 欢迎使用Markdown...
  • heathkang
  • heathkang
  • 2016-09-12 17:55:22
  • 2239

Python日记——nginx+Gunicorn部署你的Flask项目

大家在学习python的时候常常都是python 文件名.py这样启动小脚本 但实际应用中往往没有那么简单,因为通常都要多线程处理并发,处理头部,这时就需要nginx和Gunicorn了首先安装gu...
  • qq_32198277
  • qq_32198277
  • 2016-09-04 15:59:48
  • 9548

阿里云ECS+Gunicorn+Supervisor+Nginx部署Flask

部分内容同帖子:http://www.tuicool.com/articles/zUvqMr就讲几点不同的地方: 因为uwsgi怎么弄都会出bug,所以折腾半天后还是选择了Gunicorn,相应的S...
  • mikelkl
  • mikelkl
  • 2016-03-12 19:28:32
  • 1120

Flask + Gunicorn + Nginx 部署

http://www.cnblogs.com/Ray-liang/p/4837850.html 最近很多朋友都在问我关于 Flask 部署的问题,说实在的我很乐意看到和回答这样的问题,至...
  • scdxmoe
  • scdxmoe
  • 2016-11-04 15:36:25
  • 791

Flask Nginx Gunicorn Supervisor 网站部署 详解

终于开始做部署这一章了,顺便需要补一下Linux的内容 1.首先是部署的准备工作 1.首先是在goddaddy上面购买域名,你自己想取什么个性化域名,都可以去买 www.goddaddy.com...
  • bestallen
  • bestallen
  • 2016-10-15 09:14:29
  • 2189

flask笔记:11:gunicorn+gevent+nginx+flask部署,使用siege进行服务器压力测试

环境是macos sierra 10.12.3 python3.5 先安装nginx 官网下载http://nginx.org/en/download.html 安装,解压tar.gz文件 Lin...
  • u013055678
  • u013055678
  • 2017-02-27 22:18:16
  • 1789
收藏助手
不良信息举报
您举报文章:Flask Nginx Gunicorn Centos7 环境部署,将项目上线
举报原因:
原因补充:

(最多只允许输入30个字)