Traggo 标签化时间追踪部署教程
Traggo 是一款独特的开源时间追踪工具,与传统工具不同的是,它采用标签化的方式记录时间。每个时间段可以附加多个标签(如项目、客户、活动类型),通过标签组合进行灵活的统计和分析。Traggo 使用 Go 语言编写,极其轻量,使用 SQLite 存储数据。本教程将在搬瓦工 VPS 上通过 Docker 部署 Traggo。
一、Traggo 核心特性
- 标签化记录:每个时间段可以关联多个标签,标签支持键值对格式(如 project:网站开发)。
- 灵活统计:通过标签组合进行多维度时间统计,比传统的项目层级结构更灵活。
- 仪表板:可自定义仪表板,添加不同的统计组件(如按项目统计、按日期统计)。
- 日历视图:以日历形式展示时间记录,直观查看每天的时间分配。
- 多用户支持:支持创建多个用户账户,每个用户有独立的时间记录和仪表板。
- 极其轻量:Go 编写的单二进制文件,SQLite 存储,内存占用极低。
二、环境准备
- 操作系统:Ubuntu 20.04+(推荐 Ubuntu 22.04)。
- 内存:至少 256MB RAM(Traggo 非常轻量)。
- 磁盘:至少 1GB 可用空间。
- Docker:已安装 Docker 和 Docker Compose(参考 Docker 安装教程)。
购买搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 折扣。
三、Docker 部署
3.1 创建项目目录
mkdir -p /opt/traggo && cd /opt/traggo
3.2 Docker Compose 部署
cat > docker-compose.yml <<'EOF'
version: '3.8'
services:
traggo:
image: traggo/server:latest
container_name: traggo
restart: always
ports:
- "3030:3030"
environment:
TRAGGO_DEFAULT_USER_NAME: "admin"
TRAGGO_DEFAULT_USER_PASS: "YourAdminPass123"
TRAGGO_PORT: "3030"
volumes:
- traggo_data:/opt/traggo/data
volumes:
traggo_data:
EOF
3.3 启动 Traggo
docker compose up -d
docker compose logs -f traggo
启动后访问 http://你的服务器IP:3030,使用设置的管理员账户登录。
四、Nginx 反向代理
cat > /etc/nginx/sites-available/traggo <<'EOF'
server {
listen 80;
server_name time.example.com;
location / {
proxy_pass http://127.0.0.1:3030;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
EOF
ln -s /etc/nginx/sites-available/traggo /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d time.example.com
五、使用 Traggo
5.1 创建标签定义
登录后首先在设置中创建标签定义。标签是 Traggo 的核心概念,用于分类时间记录。常用标签包括:project(项目)、client(客户)、type(活动类型,如开发、设计、会议)。每个标签定义可以设置颜色和默认值。
5.2 记录时间
在时间追踪页面点击"开始"按钮启动计时器,选择对应的标签。例如一段编程工作可以同时标记为 project:网站开发 和 type:编码。完成后点击停止。你也可以手动添加过去的时间记录。
5.3 自定义仪表板
Traggo 的仪表板可以自由添加统计组件。常用的组件类型包括:按标签分组的饼图(如按项目统计时间分布)、按日期的柱状图(如每日/每周工时统计)、时间列表(展示详细的时间记录)。每个组件可以独立设置过滤条件和时间范围。
5.4 多维度分析
标签化的优势在于支持多维度交叉分析。你可以查看"某个客户的各项目时间分布",也可以查看"编码活动在各项目中的时间占比"。这种灵活性是传统层级结构的时间追踪工具无法实现的。
六、备份与升级
# 备份 SQLite 数据库
docker cp traggo:/opt/traggo/data /opt/traggo/backup_$(date +%Y%m%d)
# 升级
cd /opt/traggo
docker compose pull
docker compose down
docker compose up -d
总结
Traggo 以标签化时间追踪为特色,极其轻量且灵活。适合个人时间管理和需要多维度分析的场景。如果你需要更传统的按项目-客户结构追踪时间,可以参考 Kimai。购买搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受折扣。更多教程请访问 搬瓦工VPS中文网。