Files
pear-admin-flask/.env.example
T
bwstudio 1214bfdf4a feat(ops): 环境变量化配置 + 健康检查 + 启动脚本 + 部署/安全文档
主要变更:

config
- 引入 python-dotenv,从 .env 加载 SECRET_KEY / MAIL_* / SQLALCHEMY_DATABASE_URI
- 拆分 BaseConfig / DevConfig / ProConfig,PEAR_ENV 控制切换
- ProConfig 在 init_app() 校验 SECRET_KEY,禁止使用默认值

ops
- 新增 /healthz 端点:DB 探活 + 环境名 + 时间戳,失败返回 503
- 新增 start.bat (Windows) / Makefile (跨平台) 一键启动 / 初始化
- 新增 .env.example 模板;.gitignore 排除 .env / logs / vscode 等
- 新增 docs/DEPLOY.md(部署指南)和 docs/SECURITY.md(安全清单)
- app.py 不再硬编码 debug=False,交给配置类决定

本提交不包含上一次会话的其它工作树修改(模板/导航相关),后续单独 PR。
2026-09-05 20:46:12 +08:00

41 lines
1.3 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ============================================================
# Pear Admin Flask - 环境变量示例
# ============================================================
# 用法:
# 1) 复制本文件:cp .env.example .env
# 2) 按需修改 .env 中的值(不要提交 .env 到 git)
# 3) 应用启动时由 applications/__init__.py 自动 load_dotenv 读取
#
# 加载优先级:系统环境变量 > .env > 代码默认值
# ============================================================
# ---- 运行模式 ----
# dev: 开发模式(DEBUG=True,自动生成 SECRET_KEY,无需外部传入)
# production: 生产模式(DEBUG=False,强制要求 SECRET_KEY
PEAR_ENV=dev
# ---- 安全 ----
# 生产模式必填。可用以下命令生成:
# python -c "import secrets; print(secrets.token_urlsafe(48))"
SECRET_KEY=
# ---- 数据库 ----
# 默认是项目根目录下的 SQLite pear.db;生产推荐 MySQL。
# MySQL 示例:
# SQLALCHEMY_DATABASE_URI=mysql+pymysql://user:pass@127.0.0.1:3306/pear?charset=utf8mb4
# SQLALCHEMY_DATABASE_URI=
# ---- 邮件(Flask-Mail----
# QQ 邮箱示例
MAIL_SERVER=smtp.qq.com
MAIL_USE_TLS=false
MAIL_USE_SSL=true
MAIL_PORT=465
MAIL_USERNAME=your_account@qq.com
MAIL_PASSWORD=your_authorization_code_here
MAIL_DEFAULT_SENDER=your_account@qq.com
# ---- Flask ----
# FLASK_APP=app.py
# FLASK_DEBUG=1