bwstudio
|
be99b8a925
|
feat(data): 数据库搬到 data/ 目录 + SQLite WAL + 单卷绑定挂载
- config.py 新增 PEAR_DATA_DIR(默认 <项目根>/data),SQLite 库、Flask-Session
统一收进 DATA_DIR;不设时本地开发行为不变
- applications/__init__.py 顶部先 load_dotenv,保证 .env 里的 PEAR_DATA_DIR
在 config 导入时就生效
- extensions/init_sqlalchemy.py 接 SQLite connect 事件:WAL + synchronous=NORMAL
+ busy_timeout=30s(多 worker 写不再撞锁)
- config.py 注入 SQLALCHEMY_ENGINE_OPTIONS(pool_pre_ping + SQLite connect_args
超时;MySQL 路径下自动跳过 connect_args 防止参数错误)
- 新增 alembic 迁移 a47a5d2a3f1b 建 site_nav_click(含 anon_id 字段),
解决之前该表只由 db.create_all 建、不在迁移链里的隐患
- .gitignore / .dockerignore 加 data/ 排除规则(且把 migrations/ 从
ignore 里重新放行 —— 否则新加的迁移进不了库)
- NAS Docker 部署全面重写:
- compose 唯一绑定挂载 ./data:/app/data,宿主 File Station 看得见
- start.sh 自检 data 目录 + 子目录;workers 默认改为 1 threads 8
(SQLite 写串行,单进程最稳)
- 新增 backup.sh:sqlite3 .backup 在线热备(确保 WAL 一致性)+ 压缩
+ 保留 14 天
- Dockerfile 安装 sqlite3 客户端备用,建 /app/data 子目录并 chown
- docs/deployment-nas.md 重写数据持久化章节(路径表 + 热备命令 +
恢复步骤 + 整库迁移 tar/untar 流程)
|
2026-09-06 19:43:28 +08:00 |
|
bwstudio
|
1ea69c2c34
|
refactor(plugins): 将导航/友链/关于/统计 4 模块迁出 framework 至 plugins
- 在 applications/config.py 中通过 PLUGIN_ENABLE_FOLDERS 启用 4 个业务插件
- 删除 framework 内 applications/view/system/nav.py 与 templates/system/nav/* 模板
- applications/extensions/init_plugs 移除重复的 broadcast_execute('event_init'/'event_finish')
(由 init_bps / init_script 触发,避免 Blueprint 注册冲突)
- applications/view/system/index.py:未登录访问 / 直接渲染前台公开聚合页
- templates/system/index.html:移动端首屏即折叠侧边栏
- 新增 5 个 model(Nav 字段 status→enable 兼容、NavCategory、About、Friend、VisitLog/PageStat、NavClick)
- 新增 2 个 schema(NavCategorySchema、FriendOutSchema/ManageSchema)
- admin_about/admin_friend/admin_nav_category 在 init.json 中以「网站管理」分组挂载
- .gitignore 补充一次性备份、调试截图、探针截图不入库
|
2026-09-06 18:17:52 +08:00 |
|
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 |
|
wojiaoyishang
|
da5917344e
|
更新文档,完善插件功能
|
2025-01-27 21:34:42 +08:00 |
|
不胜舟
|
4e7a85bead
|
去除首页面,优化命名,优化schema
|
2023-06-21 01:15:56 +08:00 |
|
不胜舟
|
d71e2e220f
|
去除logo
|
2023-05-31 00:12:30 +08:00 |
|
不胜舟
|
e18a50ba30
|
修复命令行工具
|
2023-04-06 20:08:27 +08:00 |
|
不胜舟
|
0b4dbf4259
|
简化配置文件
|
2023-04-06 17:43:27 +08:00 |
|
不胜舟
|
bced84f92d
|
修改数据库初始化逻辑,完善权限,废弃flaskenv
|
2023-04-06 16:09:49 +08:00 |
|
mkg
|
6cee5a6104
|
合并配置文件,解决logo打印多次问题
|
2021-11-16 23:18:20 +08:00 |
|
mkg
|
f75928119e
|
修改目录
|
2021-11-14 20:15:26 +08:00 |
|
mkg
|
110a5faaff
|
回退依赖版本解决不能上传问题
|
2021-07-19 21:40:03 +08:00 |
|
mkg
|
78b7dae880
|
增加命令行新建空白视图功能
|
2021-07-16 13:04:49 +08:00 |
|
mkg
|
14a32e6d3c
|
增加数据库迁移命令和数据库初始化命令,分离schemas
|
2021-06-12 23:05:30 +08:00 |
|
zhengxinonly
|
d9a5bcb0de
|
调整目录结构
|
2021-06-12 21:20:13 +08:00 |
|
mkg
|
d2a2b35317
|
基本构建
|
2021-03-18 22:59:02 +08:00 |
|