本文详细介绍如何在宝塔面板中高效部署Flask应用,涵盖Python环境配置、虚拟环境创建、Nginx反向代理设置等关键步骤,并提供SSL证书配置和进程守护等进阶技巧,帮助开发者快速搭建稳定的Python Web服务。
一、环境准备
在开始部署前,请确保已完成以下准备工作:
- 已安装最新版宝塔面板(推荐7.9+版本)
- 服务器配置至少1核CPU/1GB内存
- 已解析到服务器的域名(可选)
二、安装Python项目管理器
1. 登录宝塔面板,进入”软件商店”
2. 搜索并安装”Python项目管理器”(建议选择1.9+版本)
3. 安装完成后,在面板左侧菜单会出现Python项目管理入口
检查Python版本(通过SSH)
python3 --version
三、创建Flask项目
1. 上传项目文件
通过宝塔文件管理器或FTP上传你的Flask项目,建议目录结构:
/www/wwwroot/
└── your_project/
├── app.py 主程序文件
├── requirements.txt 依赖文件
└── static/ 静态资源
2. 示例app.py基础代码
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return "Hello, Flask on BT-Panel!"
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
四、配置Python环境
1. 创建Python项目
进入Python项目管理器 → 添加项目:
- 项目名称:自定义标识
- 路径:选择项目根目录
- Python版本:推荐3.7+
- 框架类型:选择”Flask”
- 启动方式:选择”app.py”
2. 安装依赖
在项目设置中点击”模块”安装所需依赖:
通过requirements.txt安装
pip install -r requirements.txt
或手动安装核心依赖
pip install flask gunicorn
五、Nginx反向代理配置
1. 进入宝塔网站管理 → 添加站点
2. 配置域名(或使用IP+端口)
3. 修改站点配置文件:
location / {
proxy_pass http://127.0.0.1:5000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
六、高级配置
1. 使用Gunicorn提升性能
启动命令示例(在Python项目管理器中设置)
gunicorn -w 4 -b 127.0.0.1:5000 app:app
2. 配置SSL证书
在宝塔SSL管理中申请Let’s Encrypt证书,实现HTTPS加密
3. 设置进程守护
进入”Supervisor管理器”添加守护进程,确保服务异常退出后自动重启
七、常见问题排查
- 502错误:检查Gunicorn是否正常运行,端口是否冲突
- 静态文件404:确保Nginx配置了static目录的alias
- 导入错误:检查虚拟环境是否激活,依赖是否安装完整
通过以上步骤,你的Flask应用已经成功部署在宝塔面板上。建议定期通过宝塔的”计划任务”进行日志轮转和备份,确保服务稳定运行。
评论