一个完整的 Flask 应用模板,支持快速部署到 CloudBase 平台。
| 文档 | 描述 | 适用场景 |
|---|---|---|
| 项目创建指南 | 从零开始创建 Flask 项目的详细步骤 | 新手入门、项目初始化 |
| HTTP 云函数部署 | 部署到 CloudBase HTTP 云函数的完整指南 | 轻量级 API、按需计费 |
| 云托管部署 | 部署到 CloudBase 云托管的完整指南 | 企业应用、持续运行 |
- 🆕 新手开发者 → 先看 项目创建指南
- ☁️ 轻量级部署 → 使用 HTTP 云函数部署
- 🏢 企业级部署 → 使用 云托管部署
- Python 3.8 或更高版本
- 了解基本的 Python 虚拟环境使用
- 腾讯云账号并开通了 CloudBase 服务
- 基本的 Python 和 Flask 开发知识
# 快速创建(基础步骤)
mkdir cloudrun-flask && cd cloudrun-flask
python -m venv env
source env/bin/activate # Windows: env\Scripts\activate
pip install Flask==3.1.2 gunicorn==24.1.1# 启动开发服务器
python app.py
# 或者使用 Flask CLI
flask --app app run --host 0.0.0.0 --port 8080
# 访问应用
open http://localhost:8080cloudrun-flask/
├── app.py # Flask 主应用文件
├── requirements.txt # Python 依赖文件
├── .gitignore # Git 忽略文件
├── docs/ # 📚 详细文档目录
│ ├── project-setup.md # 项目创建指南
│ ├── http-function.md # HTTP 云函数部署指南
│ └── cloud-run.md # 云托管部署指南
├── env/ # 虚拟环境(本地开发用)
├── scf_bootstrap # HTTP 云函数启动脚本
├── Dockerfile # 云托管容器配置
└── .dockerignore # Docker 忽略文件
| 特性 | HTTP 云函数 | 云托管 |
|---|---|---|
| 计费方式 | 按请求次数和执行时间 | 按资源使用量(CPU/内存) |
| 启动方式 | 冷启动,按需启动 | 持续运行 |
| 适用场景 | API 服务、轻量级应用 | 企业级应用、复杂 Web 应用 |
| 端口要求 | 固定 9000 端口 | 可自定义端口(默认 8080) |
| 扩缩容 | 自动按请求扩缩 | 支持自动扩缩容配置 |
| Python 环境 | 预配置 Python 运行时 | 完全自定义 Python 环境 |
- 选择 HTTP 云函数:轻量级 API 服务、间歇性访问、成本敏感
- 选择云托管:企业级应用、复杂 Web 应用、需要更多控制权
💡 提示:以下是快速概览,详细步骤请查看对应的专门文档。
适合轻量级应用和 API 服务,按请求计费,冷启动快。
特点:
- ✅ 按请求次数计费,成本低
- ✅ 自动扩缩容,无需管理服务器
- ✅ 冷启动快,适合间歇性访问
⚠️ 固定使用 9000 端口
📖 完整指南:HTTP 云函数部署文档
快速部署:
# 1. 创建启动脚本
echo '#!/bin/bash
export PORT=9000
export PYTHONPATH="./env/lib/python3.10/site-packages:$PYTHONPATH"
/var/lang/python310/bin/python3.10 app.py' > scf_bootstrap
# 2. 安装依赖到 env 目录
pip install -r requirements.txt -t env/lib/python3.10/site-packages/
# 3. 打包上传到 CloudBase 控制台适合企业级应用,支持更复杂的部署需求,容器化部署。
特点:
- ✅ 持续运行,适合企业级应用
- ✅ 完全自定义环境和端口
- ✅ 支持复杂的依赖和配置
⚠️ 按资源使用量计费
📖 完整指南:云托管部署文档
快速部署:
# 1. 构建镜像
docker build -t flask-app .
# 2. 推送到 CloudBase 镜像仓库
# 3. 通过控制台或 CLI 部署如果你是新手或需要从零开始创建项目:
📖 完整指南:项目创建指南
快速创建:
# 基础项目创建
mkdir my-flask-app && cd my-flask-app
python -m venv env
source env/bin/activate
pip install Flask gunicorn本模板包含以下 RESTful API 接口:
GET / # 欢迎页面
GET /health # 健康检查GET /api/users # 获取用户列表(支持分页)
GET /api/users/{user_id} # 获取单个用户
POST /api/users # 创建用户
PUT /api/users/{user_id} # 更新用户
DELETE /api/users/{user_id} # 删除用户# 健康检查
curl https://your-app-url/health
# 获取用户列表(分页)
curl "https://your-app-url/api/users?page=1&limit=5"
# 创建新用户
curl -X POST https://your-app-url/api/users \
-H "Content-Type: application/json" \
-d '{"name":"测试用户","email":"test@example.com"}'
# 更新用户
curl -X PUT https://your-app-url/api/users/1 \
-H "Content-Type: application/json" \
-d '{"name":"更新用户","email":"updated@example.com"}'
# 删除用户
curl -X DELETE https://your-app-url/api/users/1Q: 如何选择部署方式? A:
- 轻量级 API → HTTP 云函数部署
- 企业级应用 → 云托管部署
- 新手入门 → 项目创建指南
Q: 部署时遇到问题怎么办? A: 查看对应的部署文档,里面有详细的故障排除指南:
端口配置:
- HTTP 云函数:必须使用 9000 端口
- 云托管:推荐使用 8080 端口,支持自定义
文件要求:
- HTTP 云函数:需要
scf_bootstrap启动脚本和env目录 - 云托管:需要
Dockerfile和.dockerignore
当前配置:
- 使用内存存储(重启后数据丢失)
- 适合演示和测试环境
生产环境建议:
- 集成数据库(PostgreSQL、MySQL 等)
- 使用 Flask-SQLAlchemy 进行 ORM 操作
- 详细配置请查看各部署文档
如需更详细的帮助,请查看:
- 项目创建指南 - 完整的项目创建流程
- HTTP 云函数部署 - 云函数部署详细步骤
- 云托管部署 - 云托管部署详细步骤
# 核心框架
pip install Flask==3.1.2
# 生产服务器
pip install gunicorn==24.1.1
# 数据库支持
pip install Flask-SQLAlchemy psycopg2-binary
# 环境变量
pip install python-dotenv==1.2.1
# API 开发
pip install Flask-RESTful Flask-CORS创建 .env 文件:
# 应用配置
DEBUG=True
SECRET_KEY=your-secret-key-here
FLASK_ENV=development
PORT=8080
# 数据库配置(可选)
DATABASE_URL=postgresql://user:password@localhost/dbname- 蓝图支持:模块化应用结构
- 模板引擎:Jinja2 模板支持
- 数据库集成:SQLAlchemy ORM 支持
- 会话管理:Flask-Session 支持
- 认证授权:Flask-Login 和 Flask-JWT 支持
- API 文档:Flask-RESTX 自动文档生成
- 项目创建指南 - 从零开始创建 Flask 项目
- HTTP 云函数部署 - 轻量级云函数部署方案
- 云托管部署 - 企业级容器化部署方案
本项目采用 MIT 许可证。详情请查看 LICENSE 文件。
需要帮助?
- 🆕 新手入门 → 项目创建指南
- ☁️ 云函数部署 → HTTP 云函数部署
- 🐳 容器部署 → 云托管部署
- 📖 Flask 官方文档 → Flask 快速入门