TrendRadarDocs项目来自sansansansan 个人项目与软件主页sandev.cc
首页文档社区企业合作个人支持致谢
  • 开始使用
    • 选择部署方式
    • 无服务器:GitHub Actions
    • 服务器 / NAS:Docker
    • 本机试用:本地运行
    • 配置内容与推送
  • 数据源配置
    • 平台配置
    • 自建热点源(AI 部署)
    • RSS 订阅配置
  • 内容筛选
    • 关键词配置
    • AI 智能筛选
  • 推送通知
    • 推送渠道
    • 推送模式
    • 调度系统
  • AI 增强
    • AI 分析推送
    • AI 多语言翻译
    • MCP 对话分析
    • MCP 提问指南
  • 数据与运维
    • 存储配置
    • 配置编辑器
    • 发布网页报告
    • 系统架构
  • 其他
    • 常见问题
  1. 文档
  2. /
  3. 数据与运维
  4. /
  5. 存储配置
上一篇MCP 提问指南下一篇配置编辑器
© TrendRadar·GPL-3.0 License·官网·GitHub·by sansan

存储配置

TrendRadar 会根据你的部署方式自动选择合适的存储后端。 大多数情况下你无需手动配置,只有使用 GitHub Actions 部署时才需要额外设置云端存储。

存储后端自动选择

部署环境存储位置说明
Docker / 本地部署本地磁盘数据存储在 output/ 目录中,开箱即用
GitHub Actions云端存储Actions 运行环境在每次执行后销毁,必须配置云端存储以持久化数据

本地存储(SQLite)

Docker 部署和本地部署默认使用本地 SQLite 存储。 数据保存在 output/ 目录中,无需任何额外配置。

output 目录结构

output/ 目录中的文件各有不同用途:
  • SQLite 数据库:存储新闻数据、排名轨迹、RSS 条目、AI 分析结果等核心运行数据
  • HTML 报告:用于邮件推送和网页查看的可视化报告文件
  • TXT 快照:纯文本格式的数据快照,用于调试和排查问题
适用场景
如果你使用 Docker 或本地方式部署 TrendRadar,数据会自动保存到本地磁盘,这部分内容可以直接跳过。以下云端存储配置仅适用于 GitHub Actions 用户。

远程 S3 存储(GitHub Actions 用户)

GitHub Actions 的运行环境在每次执行后会被销毁,因此需要配置兼容 S3 协议的云端存储来保存数据。 推荐使用 Cloudflare R2,免费额度完全够用。

需要配置的 Secrets

在你的 GitHub 仓库中,进入 Settings > Secrets and variables > Actions,添加以下 Secrets:
Secret 名称填写内容必填说明
STORAGE_BACKENDremote必填存储后端类型,填写 remote 即可
S3_BUCKET_NAME你的存储桶名称必填例如 trendradar-data
S3_ACCESS_KEY_ID你的 Access Key ID必填在创建 API Token 时获取
S3_SECRET_ACCESS_KEY你的 Secret Access Key必填在创建 API Token 时获取(仅显示一次)
S3_ENDPOINT_URL你的 R2 端点 URL必填格式:https://[account-id].r2.cloudflarestorage.com
S3_REGIONauto可选可选,默认值为 "auto",一般无需修改

Cloudflare R2 配置指南

关于 R2 费用
Cloudflare R2 需要绑定支付方式(仅用于身份验证,不会产生费用)。支持双币信用卡或 PayPal。 R2 的免费额度为每月 10GB 存储空间,对于 TrendRadar 项目来说完全够用。
1
登录 Cloudflare Dashboard
登录你的 Cloudflare 账户,在左侧菜单中找到并点击 R2 Object Storage。
2
创建存储桶
点击 Overview > Create Bucket, 输入存储桶名称(例如 trendradar-data),然后点击创建。
3
获取端点 URL
返回 Overview 页面,向下滚动到 Account Details 部分, 找到 S3 API 地址。这个地址就是你的 S3_ENDPOINT_URL:
https://[your-account-id].r2.cloudflarestorage.com
4
创建 API Token
在 Account Details 区域,点击 Manage(R2 API Tokens)进入 Token 管理页面。 点击 Create Account API Token:
  • 给 Token 起一个名称(例如 trendradar)
  • 权限选择:Admin Read and Write
  • 指定存储桶:选择你刚才创建的存储桶
  • 点击 Create
5
保存密钥
请立即复制并妥善保存
创建成功后页面会显示 Access Key ID 和 Secret Access Key。 这两个值仅在创建时显示一次,关闭页面后将无法再次查看。 如果忘记保存,只能删除旧 Token 重新创建。

其他 S3 兼容服务商

除 Cloudflare R2 外,TrendRadar 还支持其他 S3 兼容的存储服务。以下是常用服务商的端点 URL 格式:
服务商S3_ENDPOINT_URL 格式说明
Cloudflare R2https://<account-id>.r2.cloudflarestorage.com推荐,免费额度充足
阿里云 OSShttps://oss-cn-<region>.aliyuncs.com将 <region> 替换为实际地域,如 hangzhou、shanghai
腾讯云 COShttps://cos.ap-<region>.myqcloud.com将 <region> 替换为实际地域,如 guangzhou、beijing
AWS S3https://s3.<region>.amazonaws.com将 <region> 替换为实际区域,如 us-east-1

数据保留策略

你可以在 config/config.yaml 中配置本地和云端数据的保留天数:
storage:
  local:
    retention_days: 0     # 保留天数(默认 0,即永久保留。设为 30 则只保留最近 30 天)
  remote:
    retention_days: 0     # 保留天数(默认 0,即永久保留)
保留策略说明
超过保留天数的数据会在下次运行时自动清理。如果你希望永久保留所有数据,将 retention_days 设为 0 即可(这也是默认值)。云端存储建议根据免费额度合理设置保留天数,避免超出存储限制。

数据拉取(MCP Server 场景)

如果你使用 MCP Server 在本地与远程数据交互,可以配置启动时自动从远程同步数据到本地:
storage:
  pull:
    enabled: false    # 是否启用启动时自动拉取(true=启用, false=关闭)
    days: 7           # 拉取最近 N 天的数据
使用场景
此功能主要用于 MCP Server 场景:远程存储的数据在启动时自动拉取到本地,方便本地分析和查询。默认关闭,按需开启即可。

时区设置

数据的时间戳与时区设置相关。你可以在 config/config.yaml 中调整时区:
app:
  timezone: "Asia/Shanghai"  # 默认中国时间
如果你在其他时区使用,修改为对应的时区标识即可(例如 America/New_York、Europe/London 等)。