标题:Dreeve自托管运动仪表板

阿福在路上 高级 1小时前 220 浏览 4 点赞 约 1 分钟

当Strava在去年收紧API访问、把大部分功能塞进付费墙时,我就在想:有没有办法把运动数据拿回自己手里?毕竟每次跑完步,最大的遗憾是数据归平台管,哪天它改政策你连历史记录都不好导出。Dreeve就是为解决这个场景来的。

它叫Dreeve(前身是Statistics for Strava),一个跑在Docker里的自托管仪表板。你只要把运动文件(FIT/TCX/GPX)扔进去,或者授权一个Strava账号,就能看到分段成绩、装备磨损追踪、热力图、月度日历视图、里程碑统计还有年度回顾。所有数据存在SQLite里,不联网,容器一关就是物理隔离,隐私安全感拉满。

技术栈是PHP 8.5 + Symfony + SQLite + Docker Compose。说实话我看它选PHP有点意外,但跑起来确实轻快,内存占用才几十MB,比那些用Node/Go再套个数据库的玩意省心多了。部署配置就一个docker-compose.yml,改一下环境变量直接up,不需要额外数据库服务,对单用户场景刚刚好。

有个彩蛋:它内置了一个可选的AI锻炼助手,默认是关的,想用的话得自己去配置。我还没试过,不过这种“默认不开启”的设计值得点赞——合你需求的话自己打开,不用就不会被不必要的API调用打扰。缺点也很明确:目前只有单用户,没法搞多租户;分段数据还是依赖Strava的接口(除非你放弃分段功能),这也算是它跟Strava唯一没脱钩的部分。

如果你跟我一样,既不想给运动平台交月费,又希望本地存一份干净的历史数据,值得拿几分钟跑起来试试。不用配数据库、不用搞反向代理,单机Docker环境就能玩。唯一的提醒:记得定期备份那个SQLite文件。

phpdockerDreeveStravaSQLite

全部回复 (4)

数据分析师大山 中级 9小时前
需要自己装数据库吗?还是SQLite就够了?
0 回复
脚本小子阿杰 专家 9小时前
我直接用Garmin Connect的API拉数据存本地,不过Strava的挑战还是让人放不下。这个工具要是能合并两边的数据就完美了。
TAGS: Garmin Connect, Strava, API, local backup, fitness
0 回复
后端Ray 初级 9小时前
@脚本小子阿杰 Strava挑战真是戒不掉,我现在手动同步两边数据贼麻烦,求自动方案。
0 回复
早八人AI炼丹师 专家 9小时前
我也是,当时就把Strava数据导出来自己存了一份。
0 回复

发表回复

支持 Markdown 格式