第 6 轮挖掘,继续避开 AI 编程工具的红海,往「数据主权」的深水区走。这一期盯上一个大厂亲手制造出来的需求缺口:个人位置足迹的自托管。谷歌把 Timeline 改成只存手机本地、云端备份长期不更新就删,等于给千万人的出行记忆判了死缓——一批开源替身因此起飞。本期 7 个仓库串起「记录 → 上报 → 归档回放 → 车队」完整链路:有数千星的当红主角,也有几百星、树莓派都能伺候的小精品,全部围绕「自己的位置自己管」这一件事。
先说清楚选题由头。谷歌地图的「时间线」(Timeline,前身是位置历史)曾是最懂你的功能:去过哪、待了多久、这个月走了多少公里,全帮你记着。但从 2024 年起政策转向——时间线默认只存在手机本地,云端不再保留全量历史;想要备份得手动开启加密备份,而且按官方支持文档的口径,超过 90 天没更新的备份会被清掉,老用户的数据迁移还设过大限。换机失手、手机丢一次,十几年出行记忆就可能清零。
位置轨迹是最私密的数据:它等于你的作息、健康、社交关系。放在别人的服务器上,本质是把日记本借出去。于是「自己记录、自己存、自己回放」成了 self-hosted 社区近两年增长最快的品类之一。下面 7 个仓库,正好拼成一条流水线。
Freika/dawarich | Star:数千星级、仍在快速上涨 | 维护:高频迭代
一句话定位:Google Timeline 的开源正宫,这个赛道当前热度最高的项目。痛点直击:想要一份能按天回放、能出统计、永远属于自己的出行史。
核心拆解:架构是经典 Web 全家桶——Ruby on Rails 加 PostgreSQL(空间查询靠 PostGIS),后台任务交给 Sidekiq,一条 docker compose 全部拉起,连把坐标翻译成地名的 Photon 地理编码服务都打包好了。手机端不必装它家 App:用 OwnTracks、GPSLogger 或 Home Assistant 伴侣端把点位 POST 上来即可,上报接口开箱即用。服务端把散点自动聚成「行程」和「去过的地方」,地图上按天拖动回放,里程、到访城市数这些「年度报告」素材随手可查;数据随时导出 GPX,搬家不锁死;多用户原生支持,一家人的时间线各记各的。
上手难度:⭐⭐(会 docker compose 就能跑,剩下的功夫在反代和 HTTPS)
适用人群:数字游民、自托管玩家、想给孩子老人留行程档案的家庭。二开方向最清晰的是「托管版」:向不想碰服务器的普通用户卖托管套餐,或把「照片+足迹」年度报告做成产品——这条路径已被无数自托管 SaaS 走通。
dedicatedcode/reitti | Star:数百星级、增长中 | 维护:活跃(2025 年才冒头的新仓库)
一句话定位:时间线赛道的新秀,主打「你只管走路,归档我来」。痛点:dawarich 们仍要你懂上报接口、调记录间隔;Reitti 想把打理成本压到零——原始点位丢进去,它自己认出「这是家、这是公司、这是通勤」。
核心拆解:接收 OwnTracks、GPSLogger 等客户端上报后,自动把轨迹切分成「到访地点」与「移动行程」,按天生成叙事型时间线;地点支持手工合并改名,越用越准。按项目文档介绍,它还能把相册照片按拍摄位置挂回时间线——三月在那家面馆拍的照片,翻到那天就能看到。容器化部署,资源占用不高,属于典型的「小而美」:星数还不多,设计却相当讲究。
上手难度:⭐⭐
适用人群:懒得折腾的家庭用户、想记「人生日志」的人。二开方向:年度足迹报告生成器(Spotify Wrapped 那种分享欲型产品)、亲子版「今天去了哪」周报。
owntracks/recorder(官网 owntracks.org) | Star:千星级 | 维护:稳定低频
一句话定位:这个赛道的十年老前辈,极客的位置数据管道。痛点:要求位置数据只经过自己的服务器,一个字节都不过第三方。
核心拆解:体系分三块——iOS/安卓客户端负责记录,MQTT(配 Mosquitto)或 HTTP 两条通道负责传输,C 语言写的 Recorder 负责落盘与出图:内置简易地图页,历史轨迹点开即看;Lua 钩子能接自动化,比如「人到家就开灯」。与 Home Assistant 走 MQTT 天然兼容,是 HA 玩家的经典组合。C 服务端资源占用极低,老 NAS 也能跑。dawarich、Reitti 都把它当默认上游,江湖地位可见一斑。
上手难度:⭐⭐⭐(要自己搭 MQTT broker,理解 retained message 那套概念)
适用人群:隐私偏执狂、Home Assistant 玩家。变现思路偏间接:它是智能家居上门安装服务里最常被打包的组件之一,适合集成商。
mendhak/gpslogger | Star:两三千星级 | 维护:稳定
一句话定位:安卓端最省电的轨迹记录器,整条流水线的前端传感器。痛点:常驻定位 App 都是电量刺客,徒步三小时手机先没电。
核心拆解:核心思路是「按需打点」——按时间或距离间隔记录,关屏照记,不依赖谷歌服务框架,F-Droid 直接装。输出 GPX、GeoJSON、CSV、KML 等格式,还能定时自动推送:自建 HTTP 接口、SFTP、OpenGTS、OwnTracks 端点都在下拉菜单里,填个 URL 就完事。它自己不做展示——这份谦逊正是它的定位:记录的归记录,回放交给 dawarich 和 Reitti。整条流水线里,它是离用户手指最近的一环。
上手难度:⭐(装 App、填 URL,两分钟)
适用人群:徒步骑行党、想把轨迹喂给自己服务器的人。没有直接变现路径,但它是所有位置类自托管教程的默认推荐客户端,入口价值极高。
bfabiszewski/ulogger-server | Star:数百星 | 维护:稳定低频
一句话定位:百星级小仓库,把「实时定位服务」压缩到最小可用。痛点:只想知道「他现在在哪」,不想为此部署一套全家桶。
核心拆解:服务端是 PHP 加 MySQL/PostgreSQL 的轻量 Web 应用;安卓客户端实时上报,Web 页面地图刷新即可看到当前位置与历史轨迹,支持 live 模式自动刷新、多用户、轨迹下载。没有消息队列、没有容器编排,虚拟主机时代的架构放在今天反而成了优点——吃灰老 NAS、树莓派、几十兆内存的 VPS 都能伺候。和 GPSLogger 一样属于典型「小而美」:单一痛点,装完即用。
上手难度:⭐⭐
适用人群:极简党、给家里老人手机装个「在哪」按钮的人。二开方向:社区巡更、家政到岗打卡这类「轻定位」商业场景的最小可行底座。
traccar/traccar(官网 traccar.org) | Star:数千星 | 维护:高频迭代
一句话定位:开源 GPS 追踪平台的事实标准。痛点:电商几十块钱的 GPS 定位器全是私有协议;车队、租赁车、宠物、老人机,设备一多就是协议地狱。
核心拆解:Java 服务端一口气支持两百余种设备协议(README 口径),TCP/UDP 多端口监听——淘宝买来的 GT06、GPS103 协议定位器填个 IP 和端口就能入库;Web 看板管轨迹回放、地理围栏、超速告警与报表;官方 iOS/安卓客户端还能把手机本身变成一台「定位器」接入。项目运营多年,大量车队公司直接拿它当商业产品底座,官方靠托管与技术支持吃饭,核心全开源。
上手难度:⭐⭐(docker 一键;真要调硬件协议、做端口映射是 ⭐⭐⭐)
适用人群:有车队的中小企业、做定位硬件的厂商。这是本期商业价值最硬的仓库:二开方向包括租赁车风控、校车接送看板、宠物定位器贴牌,每一行都有付费先例。
bilde2910/Hauk | Star:千星级 | 维护:基本停滞(能用)
一句话定位:一条链接实时广播你的位置,挪威学生的爽快作品。痛点:爬山结伴、机场接人,临时想让人看到「我到哪了」,不值得为此装一整套系统。
核心拆解:PHP 服务端加安卓客户端,点一下生成分享链接,对方浏览器打开就是一张实时刷新的地图,你的小圆点在上面跑;支持多人组队会话,徒步团队能互相看见位置。架构简单到近乎朴素,部署一次能吃很久。需要提醒:它更新近乎停滞,选它图的是简单能跑,别当生产力基建。
上手难度:⭐⭐⭐(PHP 老派部署,不难但费点手工)
适用人群:户外结伴、车队出行的组织者。适合被二开进现有的活动、露营类产品里,充当「实时位置」模块。
| 仓库 | 角色 | 技术栈 | Star(约) | 上手难度 | 最适合 |
|---|---|---|---|---|---|
| dawarich | 时间线回放 | Ruby on Rails + PostGIS | 数千星↑ | ⭐⭐ | 家庭出行史 |
| Reitti | 自动归档时间线 | 容器化自托管 | 数百星↑ | ⭐⭐ | 零打理记录 |
| OwnTracks Recorder | 上报管道 | C + MQTT | 千星级 | ⭐⭐⭐ | 隐私极客 |
| GPSLogger | 安卓记录端 | 安卓原生 | 两三千星 | ⭐ | 徒步骑行 |
| µlogger | 超轻实时追踪 | PHP + MySQL | 数百星 | ⭐⭐ | 树莓派/看护 |
| Traccar | 车队底座 | Java | 数千星 | ⭐⭐⭐ | 车队/资产 |
| Hauk | 实时分享 | PHP | 千星级 | ⭐⭐⭐ | 户外结伴 |
注:Star 为写作时点的量级参考,精确数字以各仓库 GitHub 页面为准。
家庭自用只取两件套:手机装 GPSLogger 或 OwnTracks,服务器 docker compose 拉起 dawarich,点位自动变成时间线;嫌它重的换成 Reitti。有车队再叠加 Traccar,百元硬件立刻变成可管理的资产。整条数据流如下:
flowchart TD
A["安卓GPSLogger"] -->|定时上报| D["自建服务器"]
B["手机OwnTracks"] -->|MQTT| D
C["百元GPS终端"] -->|私有协议| E["Traccar"]
D --> F["dawarich时间线"]
D --> G["Reitti归档"]
E --> H["车队看板围栏"]
F -->|导出GPX| I["备份年度报告"]
mindmap
root((自建足迹流水线))
记录端
GPSLogger
OwnTracks
车载定位器
传输
HTTP上报
MQTT
TCP多协议
回放归档
dawarich
Reitti
轻量分享
ulogger
Hauk链接
车队底座
Traccar
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
