腾讯云宝塔Linux面板搭建Flask项目最新教程 干货笔记!!

本文指导读者在腾讯云购买服务器并配置宝塔Linux面板,一步步在面板内搭建Flask项目,包括创建虚拟环境、上传项目、配置Nginx、放行端口,以及代码修改和测试运行过程。

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

一、腾讯云购买服务器并配置登录宝塔

腾讯云购买公网并配置宝塔Linux面板简单流程可参考视频:
如何在公网部署网站

二、在宝塔Linux面板内搭建Flask项目

1. 上传项目文件

1.1 准备工作

在上传项目文件之前,我们需要将项目运行所需环境进行打包。采用 virtualenv 库创建和管理项目环境。

第一步:安装 virtualenv
在开始之前,确保你的系统中已经安装了 Python。virtualenv 是一个 Python 包,可以通过 pip 命令安装。打开终端或命令提示符,输入以下命令:

pip install virtualenv

如果你使用的是 Python 3,可能需要使用 pip3 来代替 pip。

pip3 install virtualenv

第二步:virtualenv 创建虚拟环境
用 virtualenv 创建一个新的虚拟环境:在当前目录下创建一个名为 flask_kedney_venv 的文件夹,其中包含了一个新的 Python 环境。
例如创建一个python3.8.17解释器的虚拟环境:(其中 flask_kedney_venv 可替换成你需要的虚拟环境名)

virtualenv -p python3.8.17 flask_kedney_venv

第三步:激活环境:

  1. 在 Windows 上使用:

flask_kedney_venv\Scripts\activate

  1. 在 macOS 或 Linux 上,使用:

source flask_kedney_venv/bin/activate

第四步:在创建的虚拟环境中安装所需的包

  1. 可通过生成环境配置信息的requirements.txt配置环境
  • 生成requirements.txt

pip freeze > requirements.txt

  • pip安装依赖包

pip install -r requirements.txt

1.2 文件上传方法

可从腾讯云中你购买的网站那进入宝塔Linux面板,将项目上传到宝塔Linux面板的 /www/wwwroot 路径下,具体步骤可参考一下操作。
以下例子中 flask_kedney 为本人上传完成的项目
步骤:1 --> 2 --> 3

2. 新建python项目

在这里插入图片描述
第一步: 添加Python项目:
参考下图填写相关信息,下面为以上传的项目flask_kidney为例。
(1)项目路径:导入项目正确路径后,下面的项目名称和运行文件即自动填入
(2)项目端口:可设置为 8000 或自行创建的端口号
(3)放行端口:记得选中,外网才能访问
(4)框架:选flask
(5)运行方法:uwsgi 网络协议:wsgi
(6)安装依赖包:【1.1第四步】导出的环境配置 requestment.txt

在这里插入图片描述
点击提交后就可以看到该项目的状态
在这里插入图片描述

3. 项目设置

在这里插入图片描述

3.1 项目配置

在这里插入图片描述

3.2域名管理

第一步:从腾讯云中获取你的公网ip (内网ip) 在这里插入图片描述
第二步:填写到宝塔中的域名管理,后点击“添加”即可

  • 输入格式: 域名(或外网ip):端口号**
    在这里插入图片描述

3.3外网映射

  • 打开外网映射

在这里插入图片描述

3.3配置文件

设置Nginx(关键)
找到server部分,修改listen为上面设置的端口号【与上面第2点设置的统一】,server_name为自己服务器的公网ip【上面第3.2点有提及】,修改root为自己的项目目录
在这里插入图片描述

3.4运行配置

flask项目中uwsgi配置
内网ip 为【3.2有提及】; 端口号【与上面第2点设置的统一】

  • chdir:为自己项目的目录
  • http:把原始的socket改为http,然后把地址改为 内网ip:端口号
  • buffer-size:建议改大一点
  • virtualenv:设置为项目文件下自动生成的环境文件夹

http = 1*...**:8000
#添加的部分
buffer-size=65536
callable=app
virtualenv = /www/wwwroot/flask_kedney/flask_kedney_venv

在这里插入图片描述
如果点确认的时候显示端口已被占用,则需要先打开服务器终端,输入命令

netstat -anp | grep 8001,查看是哪个进程占用了当前端口

接着输入命令 kill -s 9 XXXX,XXXX为占用该端口的进程名

然后再重新配置flask项目的uwsgi

3.5 设置Nginx(关键)

在这里插入图片描述
第一步:找到server部分

  • 修改server_name为自己服务器的公网ip

  • 修改root为自己的项目目录
    在这里插入图片描述

添加location,添加
include uwsgi_params;
uwsgi_pass 1*...**:8000; #这个地址和端口号一定要与flask项目中uwsgi配置【3.4有提及】时的地址和端口号相同
uwsgi_param UWSGI_CHDIR /www/wwwroot/project; #设置为自己的项目目录
添加location /static/
添加alias www/wwwroot/project/static; #表明访问flask中的static目录下的静态文件,如CSS,图片等。
在这里插入图片描述

4. 放行端口

在这里插入图片描述
添加端口,然后提交即可。【注意添加的端口要为以上所设置的端口统一】
在这里插入图片描述

三、Flask项目代码修改

需要修改项目代码中的网站和端口的设置。
1、app.py 文件中

app.run(host=‘内网ip’,post=端口号,debug=True)

在这里插入图片描述
2、前端代码/其他有设置了网站或端口的地方
例如个人的html中设置了相关链接,运用了网站或端口,需要将其修改为

herf = “http://外网ip:端口号/”

在这里插入图片描述

四、测试与运行

1. 测试

在项目运行前,可在此终端进行项目测试与调试。
【注意:记得进入virtualenv 创建的虚拟环境中】
命令如下 :flask_kedney_venv为你创建的虚拟环境名

source flask_kedney_venv/bin/activate

在这里插入图片描述

2. 运行

点击开启运行后,就可以通过 http://外网ip:端口号 访问属于你自己的网站啦!!!
在这里插入图片描述

五、效果展示

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

六、可参考文献

1. 最简单最详细的宝塔部署flask教程

2. 手把手教您使用Python项目管理部署Djangoblog

3. 零基础搭建网站-借助宝塔面板在阿里云部署Flask项目并启动Celery

### 宝塔面板部署Flask应用程序 #### 准备工作 为了在阿里云服务器上使用宝塔面板部署Flask应用,需先完成环境准备。这包括安装并配置好Linux操作系统(推荐CentOS或Ubuntu),以及确保已购买并激活了阿里云ECS实例。 #### 安装宝塔面板 通过SSH连接至阿里云ECS实例,在终端执行命令来安装宝塔面板: ```bash yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ede3604f7c9a8b5d12efcd8fbddbafe6 ``` 对于Debian/Ubuntu系统,则应运行如下脚本: ```bash wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ede3604f7c9a8b5d12efcd8fbddbafe6 ``` 此过程可能耗时几分钟不等[^2]。 #### 创建网站与数据库 登录宝塔面板后,依次点击左侧菜单中的【网站】-> 【添加站点】输入域名信息;接着进入【数据库】模块新建MySQL/MariaDB用于存储数据。 #### Flask项目的上传与设置 将本地开发好的Flask项目打包成ZIP文件形式上传到新建立的网站根目录下解压。编辑`config.py`或其他配置文件指定正确的数据库链接字符串。 #### 配置Nginx作为反向代理 由于Flask自带Web Server不适合生产环境长期稳定服务请求,因此建议采用Gunicorn/uWSGI配合Nginx的方式对外提供HTTP访问接口。具体操作是在宝塔面板内找到对应站点名称旁边的“设置”,切换到“反向代理”选项卡新增一条转发规则指向localhost上的gunicorn监听地址(默认情况下为127.0.0.1:8000)。 #### 开放必要的防火墙端口 返回阿里云管理后台的安全组页面允许外部流量到达虚拟机内部的服务端口号,比如这里要开放的是3306(MySQL)和5000(Flask/Gunicorn),按照提示创建相应规则即可[^1]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值