publ
|
2568c0380b
|
feat: MySQL SSL 支持 + 任务编辑回显 + InfluxDB 备份
MySQL:
- 新增 use_ssl 选项;MariaDB 11.x 默认强制 SSL 且默认 verify cert,
故启用 SSL 时同时加 --skip-ssl-verify-server-cert 以兼容自签名证书。
任务编辑回显:
- 后端 JobOut 新增 source_config_safe 字段,解密后敏感字段(password/token/
secret_key/access_key)脱敏为 "***"。
- 更新端点接收 source_config;若密码字段为 "***" 则保留原值不变,
支持"不改密码只改其它字段"的常见场景。
- 前端 JobForm 完整回显所有数据源字段,type='edit' 时去掉 disabled。
InfluxDB 备份(新增类型):
- 后端 core/backup/influxdb.py:
- v2.x:调用 influx CLI(influxdb2-client-2.7.5 二进制直接安装)执行 influx backup
生成目录后 tar.gz 流式打包上传。
- v1.x:通过 HTTP API 调用 /query?db=...&q=SELECT * FROM /.*/ 拉取全量数据
导出为 CSV + META.txt。
- Dockerfile:直接下载 influx CLI 二进制(绕开 apt 签名问题)。
- 前端 JobForm:根据 version 动态显示 v1/v2 表单字段。
- schemas/job.py:新增 InfluxDBSourceConfigV1 / V2。
- 类型字面量扩展:'mysql' | 'directory' | 'influxdb'。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-22 19:14:45 +08:00 |
|
publ
|
febdeab35c
|
refactor: 改用 bind mount 替代 named volume
数据(SQLite、备份文件、日志)从 Docker 内部卷改为挂载到项目目录:
- ./data/backend/ (SQLite + 默认 local backup 根)
- ./data/logs/ (应用日志)
好处:
- 数据直接可见于项目目录,便于备份/迁移/排查
- 删容器时数据保留(除非显式删除 ./data)
- 不再依赖 /vol1/docker/volumes/ 的自定义 Docker root
迁移说明:
旧 named volume 中的数据已通过临时 alpine 容器复制到 ./data/,
admin 账号、测试 jobs/runs 全部保留。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-22 18:37:32 +08:00 |
|
publ
|
4e3a4b4602
|
feat: 数据备份管理系统 v0.1.0
带 Web 操作界面的备份系统,支持:
- 数据源:MySQL 数据库(mysqldump)、服务器目录(tar.gz)
- 存储目标:本地目录、S3 兼容对象存储(MinIO/Ceph/AWS S3)
- 触发方式:手动 + Cron 定时调度(APScheduler)
- 备份还原:MySQL 库、目录
- JWT 登录认证 + Fernet 字段加密
- 保留策略:按数量 + 按天数双重清理
技术栈:FastAPI + SQLAlchemy 2 + APScheduler + aioboto3;
前端 Vite + React 18 + TypeScript + Ant Design 5 + Zustand。
Docker Compose 一键起。
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-22 18:27:41 +08:00 |
|