美文网首页
阿里云快速部署Flask项目-Ubuntu+Gunicorn+N

阿里云快速部署Flask项目-Ubuntu+Gunicorn+N

作者: 陈small末 | 来源:发表于2019-01-14 14:02 被阅读0次

阿里云快速部署Flask项目-Ubuntu+Gunicorn+Nginx

gunicorn是一个python Wsgi http server,只支持在Unix系统上运行,来源于Ruby的unicorn项目
gunicorn比uwsgi高并发稳定一点,配置简单方便

一. 安装包

  1. 安装了Nginx apt-get install nginx
  2. 安装Flask pip install flask
  3. 安装UWSGI pip install uwsgi
  4. 安装了Gunicorn pip install gunicorn

二. 创建项目

  1. 在你的/var/www/目录下创建一个项目目录myflask

  2. 在myflask中创建文件test.py,内容如下

    from flask import Flask
    app = Flask(__name__)
    
    @app.route('/')
    def hello_world():
        return 'Hello, World!'
        
    if __name__ == "__main__":
     app.run()
    

三. 配置Nginx

server{
    listen 80;
    server_name 47.75.114.229;
    charset utf-8;
    root /var/www/myflask;
    
    location / {
        proxy_pass http://127.0.0.1:8000;  # 这里是指向gunicorn host的服务地址
        proxy_read_timeout 300;
    }
}

四. 启动Nginx

将配置好的nginx.conf文件拖入xshell的/var/www/myflask/下: 
启动nginx: nginx -c  /var/www/myflask/nginx.conf
[停止nginx: nginx -s stop]

五. 运行gunicorn

# 启动
gunicorn -w 20 -b 0.0.0.0:8000 test:app
# 关闭
pstree -ap|grep gunicorn
kill -9 11111

六. 访问

 http://47.75.114.229/ 

阿里云部署Flask项目

    部署Flask项目和之前部署Django项目基本一致,我们可以使用uwsgi+nginx
    
    我们在之前部署Django项目基础上部署Flask项目
    
    1, 将uwsgi.ini和tpppackage.txt 文件拖入TPP项目工程目录下, 和manage.py 同一个目录
    
    2, 将Flask项目配置
        a, 改成product环境
        b, 修改ajax请求的接口路径为相对路径
        c, 去掉print
        
    3, 然后将TPP项目拖入云服务器(rz)
        
    4, 创建虚拟环境
        mkvirtualenv FlaskTPP
        
    5, 在虚拟环境下安装uwsgi
        pip install uwsgi
    
    6, 安装Flask项目依赖包 (导出虚拟环境中的所有包: pip freeze > tpppackage.txt)
        pip install -r tpppackage.txt
    
    7, 在mysql中创建Flask项目对应的数据库tppdb
        create database tppdb charset=utf8;
        
    8, 迁移
        (python manage.py db init) 已经有migrations文件夹则不使用
        python manage.py db migrate
        python manage.py db upgrade
    
    8, 使用Navicat连接阿里云服务器的mysql,给表加入数据
        
    9, 修改nginx.conf 
        a,将连接uwsgi的端口和uwsgi.ini配置文件相同
             location / {
                    include /etc/nginx/uwsgi_params;
                    uwsgi_pass localhost:8000;
                     }
        b, 将静态文件路径修改
             location /static {
                    alias /var/www/TPPPro/App/static/;
                     }
    
    10,uwsgi服务器启动和关闭
        关闭: 
            ps -ef|grep uwsgi : 查看进程
            kill -9 5563 : 关闭进程(5563为进程号)
        开启:
            uwsgi --ini uwsgi.ini
    
    11, nginx服务器启动和关闭
        关闭:nginx -s stop
        运行:nginx -c /root/nginx.conf   
        
        注意:先启动uwsgi,然后再启动nginx
    
    

相关文章

  • 阿里云快速部署Flask项目-Ubuntu+Gunicorn+N

    阿里云快速部署Flask项目-Ubuntu+Gunicorn+Nginx 一. 安装包 安装了Nginx apt-...

  • 在阿里云部署 Flask 应用

    原文首发于CSDN,略有增删 在阿里云部署 Flask 应用 本文简单记录在阿里云部署 Flask 应用的过程。由...

  • 阿里云部署Flask项目

    一.购买阿里云服务器1.登录阿里云官网,购买云服务器ECS,此处有两种方法,一是购买云服务器ECS,费用较高,二是...

  • Flask启动app.run(host='0.0.0.0',po

    这段时间用Flask写了一个小项目, 尝试部署到阿里云服务器上,本来项目并不复杂,可是部署的时候却踩了很多坑。通过...

  • 第四篇: flask项目部署(git) -- Centos7(6

    在第三篇: Flask极简项目部署 -- Centos7(64位)云主机部署Python Flask项目实战系列 ...

  • 在阿里云使用docker部署flask(nginx+gunico

    阿里云高性能服务器2折起:点我购买 学生云服务器114/年:点我购买 近期有两个flask小项目需要部署在阿里云服...

  • flask 部署阿里云

    1.上周入手了阿里云,所以把前段时间写的flask程序部署到阿里云上,之前是部署到heroku上的,下面介绍下如何...

  • 阿里云部署flask

    1 配置:ECS CentOS7首先进入阿里云控制台,在ECS面板修改重置实例密码。[最后有配置安全组] 然后还是...

  • 课程设计问题总结

    一些部署到阿里云的问题 一直在阿里云上部署项目,但是只是以ip:端口的形式去进行访问部署到阿里云的项目,个人觉得很...

  • 阿里云服务器部署flask

    记录一下将本地的flask web后台部署到阿里云服务器的整个过程: 安装python环境由于不同的项目可能会引用...

网友评论

      本文标题:阿里云快速部署Flask项目-Ubuntu+Gunicorn+N

      本文链接:https://www.haomeiwen.com/subject/khcvrqtx.html