Flask项目两种部署方法

第一种方法:基于gunicorn部署flask项目

  1. 首先需要先上传你的项目到服务器
  2. 然后进入你的项目目录,这里我已经上传好了,主文件命名为app.py
  3. 微信截图_20220918194928

搭建开发环境(前提是你已经安装了python3)

  1. 安装virtualenv来创建虚拟环境
pip install virtualenv

     2.创建虚拟环境

virtualenv venv

微信截图_20220918195631

      此时多了一个文件夹

   3.激活虚拟环境

cd venv
source bin/activate
cd ..

微信截图_20220918195901

安装相关模块

pip install Flask

微信截图_20220918200131

开始部署

创建配置文件config.py

vi config.py

写入如下内容

bind = "0.0.0.0:4567"#4567表示端口号
workers = 2

gunicorn安装

pip install gunicorn

运行项目

gunicorn -c config.py app:app --daemon

微信截图_20220918201942

特别说明

//查看gunicorn运行的flask项目
ps aux | grep gunicorn  查看gunicorn的进程状态
ps -ef | grep gunicorn  查看gunicorn的进程状态
kill -9 进程id  杀掉flask进程

lsof -i :4567 查看某端口的运行进程情况
kill -9 $(lsof -i tcp:4567 -t)   root用户杀死占用某端口的所有进程
另外,非root用户可能需要执行:kill -9 $(sudo lsof -i tcp:4567 -t)

访问项目地址

大功告成!

第二种方法:uswgi部署

Python 安装 uWSGI

在安装的过程中有个坑,原因可能是某些依赖没安装,所以第一步安装依赖

yum install python3-devel

安装uswgi

pip install uwsgi

本地端生成requirements.txt 文件

pip freeze > requirements.txt

搭建开发环境

  1. 安装virtualenv来创建虚拟环境
pip install virtualenv

     2.创建虚拟环境

virtualenv venv

微信截图_20220918195631

      此时多了一个文件夹

   3.激活虚拟环境

cd venv
source bin/activate
cd ..

微信截图_20220918195901

安装相关模块

在项目根目录下安装requirements.txt

pip install -r requirements.txt

微信截图_20220919004443

写配置文件

在项目目录新建config.ini文件并写入如下内容

[uwsgi]
# uwsgi 启动时所使用的地址与端口
http-socket = 0.0.0.0:2565

# 指向网站目录
chdir = /www/wwwroot/qhost.cn

# python 启动程序文件
wsgi-file = app.py

# python 程序内用以启动的 application 变量名
callable = app

# 处理器数
processes = 4

# 线程数
threads = 1

# 状态检测地址
stats = 0.0.0.0:5001

后台启动运行项目

uwsgi -d --ini config.ini

微信截图_20220919004827

大功告成

特别说明

lsof -i :5503  查看某端口的运行进程情况
kill -9 $(lsof -i tcp:5503 -t)   root用户杀死占用某端口的所有进程
另外,非root用户可能需要执行:kill -9 $(sudo lsof -i tcp:5503 -t)
© 版权声明
THE END
喜欢就支持一下吧
点赞8赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容