Kimai 时间追踪工具搭建教程
Kimai 是一款成熟的开源时间追踪应用,适合自由职业者、团队和企业记录和管理工作时间。它提供项目和活动级别的时间记录、多用户团队管理、费率设定和丰富的报表导出功能。基于 Symfony 框架构建,稳定可靠。本教程将在搬瓦工 VPS 上通过 Docker 部署 Kimai。
一、Kimai 核心功能
- 时间记录:一键启停计时器,或手动输入时间段,记录每个任务的工时。
- 项目管理:按客户-项目-活动三级结构组织时间记录。
- 费率管理:为客户、项目和活动设置不同的计费费率,自动计算费用。
- 团队管理:多用户支持,按团队分组,管理者可查看团队成员的时间记录。
- 报表导出:支持 PDF、Excel、CSV 格式导出,可按时间段、项目或客户生成报表。
- 插件扩展:丰富的插件生态,包括发票生成、考勤管理和日历集成等。
- 多语言:支持包括简体中文在内的 30+ 种语言。
二、环境准备
- 操作系统:Ubuntu 20.04+(推荐 Ubuntu 22.04)。
- 内存:至少 512MB RAM,推荐 1GB。
- 磁盘:至少 5GB 可用空间。
- Docker:已安装 Docker 和 Docker Compose(参考 Docker 安装教程)。
购买搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 折扣。
三、Docker Compose 部署
3.1 创建项目目录
mkdir -p /opt/kimai && cd /opt/kimai
3.2 创建 Docker Compose 文件
cat > docker-compose.yml <<'EOF'
version: '3.8'
services:
kimai:
image: kimai/kimai2:latest
container_name: kimai
restart: always
ports:
- "8001:8001"
environment:
ADMINMAIL: "admin@example.com"
ADMINPASS: "YourAdminPass123"
DATABASE_URL: "mysql://kimai:your_db_password@db:3306/kimai?charset=utf8mb4&serverVersion=8.0"
TRUSTED_HOSTS: "localhost,your-domain.com"
memory_limit: 256M
volumes:
- kimai_var:/opt/kimai/var
- kimai_plugins:/opt/kimai/var/plugins
depends_on:
- db
db:
image: mysql:8.0
container_name: kimai-db
restart: always
environment:
MYSQL_ROOT_PASSWORD: your_root_password
MYSQL_DATABASE: kimai
MYSQL_USER: kimai
MYSQL_PASSWORD: your_db_password
volumes:
- mysql_data:/var/lib/mysql
command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4
volumes:
kimai_var:
kimai_plugins:
mysql_data:
EOF
3.3 启动服务
docker compose up -d
docker compose logs -f kimai
首次启动会自动创建数据库表和管理员账户。启动完成后访问 http://你的服务器IP:8001,使用配置的管理员邮箱和密码登录。
四、Nginx 反向代理
cat > /etc/nginx/sites-available/kimai <<'EOF'
server {
listen 80;
server_name time.example.com;
location / {
proxy_pass http://127.0.0.1:8001;
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/kimai /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d time.example.com
五、使用 Kimai
5.1 创建客户和项目
进入管理面板,首先创建客户(你的服务对象),然后在客户下创建项目,项目下创建活动(具体的工作类型)。例如:客户"某科技公司" → 项目"网站开发" → 活动"前端开发"、"后端开发"、"会议"。
5.2 记录时间
在首页点击"开始"按钮启动计时器,选择项目和活动,开始工作。完成后点击"停止"结束记录。也可以手动创建时间条目,输入开始时间、结束时间和描述。时间表页面以日历形式展示所有时间记录。
5.3 费率与计费
在项目或活动设置中配置小时费率。Kimai 会根据记录的时间自动计算费用。支持为不同用户设置不同费率,适合团队成员有不同收费标准的场景。
5.4 报表导出
进入报表页面,选择时间范围、客户和项目等过滤条件,查看时间和费用统计。支持导出为 PDF 格式的专业报表、Excel 电子表格或 CSV 数据文件。
六、备份与升级
# 备份数据库
docker exec kimai-db mysqldump -u kimai -pyour_db_password kimai > /opt/kimai/backup_$(date +%Y%m%d).sql
# 升级
cd /opt/kimai
docker compose pull
docker compose down
docker compose up -d
总结
Kimai 是功能最全面的开源时间追踪工具之一,适合需要精确工时管理和计费的场景。如果你需要更轻量的时间追踪,可以参考 Traggo。购买搬瓦工 VPS 请参考 全部方案,使用优惠码 NODESEEK2026 可享受折扣。更多教程请访问 搬瓦工VPS中文网。