devperf/docker-compose.yml
zyc 44464dd334 feat: DevPerf Dashboard 研发人效看板 v1.0
- 后端:Bun + Hono + Drizzle ORM + SQLite
- 前端:Vue 3 + Naive UI + ECharts
- 项目管理:创建项目 + 绑定 Git 仓库
- OKR 系统:目标/关键结果 CRUD + 进度追踪
- Git 同步:Gitea API 自动同步 commit/PR + 作者关联
- 数据看板:项目 OKR 进度 + KR 状态分布 + 代码活动
- 权限体系:admin/manager/developer/viewer 四级
- Docker 部署:docker-compose + nginx

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 17:57:14 +08:00

54 lines
1.4 KiB
YAML

version: '3.8'
services:
dashboard-api:
build:
context: ./backend
dockerfile: Dockerfile
ports:
- "3200:3200"
environment:
- DATABASE_PATH=/data/devperf.db
- JWT_SECRET=${JWT_SECRET:-change-me-in-production-32chars}
- PORT=3200
- PLANE_BASE_URL=${PLANE_BASE_URL:-http://plane-api:8000}
- PLANE_API_TOKEN=${PLANE_API_TOKEN}
- PLANE_WORKSPACE_SLUG=${PLANE_WORKSPACE_SLUG:-jasonqiyuan}
- GITEA_BASE_URL=${GITEA_BASE_URL:-http://gitea:3000}
- GITEA_API_TOKEN=${GITEA_API_TOKEN}
- GITEA_ORG=${GITEA_ORG:-jasonqiyuan}
- SYNC_PLANE_INTERVAL=${SYNC_PLANE_INTERVAL:-15}
- SYNC_GITEA_INTERVAL=${SYNC_GITEA_INTERVAL:-30}
- ADMIN_EMAIL=${ADMIN_EMAIL:-admin@jasonqiyuan.com}
- ADMIN_PASSWORD=${ADMIN_PASSWORD:-Admin123!}
volumes:
- dashboard-data:/data
restart: unless-stopped
networks:
- devperf-net
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3200/api/health"]
interval: 30s
timeout: 10s
retries: 3
dashboard-web:
build:
context: ./frontend
dockerfile: Dockerfile
ports:
- "3201:80"
depends_on:
dashboard-api:
condition: service_healthy
restart: unless-stopped
networks:
- devperf-net
volumes:
dashboard-data:
networks:
devperf-net:
external: true