Flask部署 nginx+supervisor+virtualenv

本文介绍了如何在服务器上部署Flask应用,通过安装虚拟环境、配置Nginx和使用Supervisor来确保应用的稳定运行。首先,创建并激活虚拟环境,安装所需的包。接着,安装Nginx并配置其配置文件。如果遇到问题,检查错误日志进行解决。然后,介绍Supervisor作为进程管理工具,用于管理Flask应用的启动、停止和监控。最后,提供Supervisor的配置方法及管理命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安装虚拟环境

sudo pip install virtualenv

然后到自己想要去的目录下创建虚拟环境

virtualenv  虚拟环境名字

激活虚拟环境

source 虚拟环境名字/bin/active

此时就已经进入到了自己创建 的python虚拟环境里面了

在虚拟环境里面安装当前项目需要的包,就可以做到简洁和与其他项目运行不冲突

我们把需要的环境添加到文本里面

vim requirement.txt


flask
flask-wtf
flask-script
flask-bootstrap
wtforms
pillow
pymssql
gunicorn

还需要些什么包按自己需求写入

我依赖的部署服务器是gunicorn

Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server。
和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点。

安装所需要的包

pip insatll -r  requirement.txt

2.nginx安装

sudo apt-get install nginx

查看nginx运行状态 sudo service nginx statu

2.1配置nginx

进入nginx目录下面

cd /etc/nginx/

可以ls看下有些什么文件

 

 sites-available(放置可用的配置文件)和sites-enabled(放置生效的配置文件)

cd  sites-available/   进入创建配置文件

sudo vim 文件名

server{
        listen 80;   #监听80端口

        location /static {
                alias 路径/static;      #静态文件路径
        }

        location / {
                proxy_pass http://127.0.0.1:9000;    #处理所有的http请求
        }
}

sites-available就已经配置好了,下面创建他与sites-enabled的软连接

进入sites-enabled目录下面

cd ..

cd sites-enabled/

sudo ln -s ../sites-available/文件名

这就配置好了,我们就可以重新加载nginx

sudo service nginx reload 

2.2如果有Job for nginx.service failed because the control process exited with error code.错误

就进去错误日志看看

vim /var/log/nginx/error.log

如果没有显示任何错误,就看看nginx的进程

 ps -ef | grep  nginx

然后全杀死

pkill -9 nginx

解决完以后就可以重新启动nginx

sudo service nginx reload 

sudo service nginx restart

3.supervisor简介

进程管理工具

(1).管理应用程序进程的控制

(2).多应用进程的管理

(3).应用中断后的快速恢复

3.1supervisor安装与配置

sudo apt-get install supervisor

 进入这个目录下面

cd /etc/supervisor/conf.d/

sudo vim 项目名字.conf        进入文件编辑模式 没有 项目名字.conf 这个的时候回自动创建一个这个文件

[program:项目名字]
command =虚拟环境目录/bin/gunicorn -b 127.0.0.1:9000 运行文件(不用加.py):app
directory =/项目目录/       指定项目的url

sudo supervisorctl 进行后台的管理

>reload    重新加载配置文件

>status    查看运行状态 

> stop 项目名字   停止运行

>start 项目名字   启动

 

 

这样我们的项目就已经跑起来了

下面是基本概念图

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值