• flask的部署:gunicorn + supervisor + flask


    flask的部署:gunicorn + supervisor + flask

    背景:使用flask部署了一个发送请求的小工具给RD使用,部署在开发机上,但是提供外部使用时不太适合使用flask自带的web服务器,在这采用gunicorn + supervisor + flask这个组合

    工具作用:

    • flask:web框架,都知道的
    • gunicorn:一个python使用的web服务器 gunicorn介绍
    • supervisor:进程管理工具,通过该工具管理gunicorn的运行,根据配置文件启动项目,还可以查看状态,停止等操作

    软件安装

    1、安装flask

    pip install flask
    

    2、安装gunicorn:版本问题需要注意

    # python2的安装
    python -m pip install gunicorn # 指定python版本,我的python默认是2.7
    
    # python3的安装:一般机器上带有2套环境,默认是3
    pip3 install gunicorn
    或者 
    pip install gunicorn
    

    3、安装supervisor:也需要注意版本问题,如果用的py2,都要安装2的版本

    # 1、安装
    pip install supervisor   
    
    # 2、生成默认的配置文件 建议放在自建配置目录里
    cd /etc
    mkdir supervisor
    cd supervisor
    echo_supervisord_conf > supervisor.conf # 生成 supervisor 默认配置文件,后续的操作都在该conf文件里
    

    软件使用

    1、supervisor.conf 配置文件底部添加:这个配置文件最好放在项目目录下,和启动py文件在一起

    [program:myapp]
    command=gunicorn -w 4 -b 0.0.0.0:2170 myapp:app               ; supervisor启动命令
    directory=/home/wkk/python/sender                                    ; 项目的文件夹路径
    startsecs=0                                                                             ; 启动时间
    stopwaitsecs=0                                                                          ; 终止等待时间
    autostart=false                                                                         ; 是否自动启动
    autorestart=false                                                                       ; 是否自动重启
    stdout_logfile=/home/wkk/python/sender/log/gunicorn.log                           ; log 日志
    stderr_logfile=/home/wkk/python/sender/log/gunicorn.err        
    

    2、启动supervisor,通过supervisor来管理 gunicorn,这样就flask项目启动完成

    # 启动文件,查看到项目 runing
    supervisord -c supervisord.conf 
    
  • 相关阅读:
    jquery mobile (一)
    jquery mobile 前言
    MD5Helper辅助类
    设计权限管理系统(十四)
    设计权限管理系统(十三)
    display:table-cell的min-height
    CORS跨域cookie传递
    性能优化-合成层
    textarea自适应高度
    仿今日头条按钮loading效果
  • 原文地址:https://www.cnblogs.com/alisleepy/p/15931244.html
Copyright © 2020-2023  润新知