cf-owntracks 是一个基于 Cloudflare Workers 的位置追踪服务器实现,受 OwnTracks 项目启发。相比原始的 OwnTracks 需要自建服务器,本项目利用 Cloudflare Workers 的优势,提供了一个低成本、易部署,数据高可用且高性能的替代方案。
- 🚀 基于 Cloudflare Workers,无需自建服务器
- 💾 使用 R2 存储位置数据,成本低廉
- 🔒 内置基本认证(Basic Auth)保护
- ⚡ 全球边缘网络分发,低延迟
- 📱 完全兼容 OwnTracks 客户端
- 🔍 支持历史位置查询
- 📍 支持实时位置更新
- Cloudflare 账号
- Node.js 16+
- npm 或 yarn
- wrangler CLI
- 克隆仓库:
bash
git clone https://github.com/yourusername/cf-owntracks.git
cd cf-owntracks
- 安装依赖:
npm install
- 配置 wrangler.toml:
name = "owntracker-worker"
main = "src/index.ts"
[[r2_buckets]]
binding = "STORAGE"
bucket_name = "your-bucket-name"
[[kv_namespaces]]
binding = "LAST_LOCATIONS"
id = "your-kv-namespace-id"
[vars]
BASIC_AUTH_USER = "your-username"
BASIC_AUTH_PASS = "your-password"
- 部署:
npm run deploy
POST /
- 接收 OwnTracks 客户端的位置更新
GET /api/0/locations
- 查询历史位置GET /api/0/last
- 获取最新位置GET /api/0/list
- 列出用户和设备GET /api/0/version
- 获取版本信息
- 下载并安装 OwnTracks 客户端
- 配置连接信息:
- Mode: HTTP
- URL: 你的 Worker URL
- Authentication: Basic
- Username: 设置的用户名
- Password: 设置的密码
- Cloudflare Workers: 每天免费 100,000 请求
- R2 存储:每月前 10GB 免费
- KV 存储:免费额度足够一般使用
欢迎提交 Issue 和 Pull Request!
感谢 OwnTracks 项目。