数据库迁移: - SQLite → MySQL (mysql-8351f937d637-public.rds.volces.com) - Schema 从 drizzle-orm/sqlite-core 改为 drizzle-orm/mysql-core - 全量数据迁移完成(13 张表 525 条记录) CI/CD 流水线: - .gitea/workflows/deploy.yaml(airlabs 分支触发) - 前后端分别构建镜像推到火山引擎 CR internal 命名空间 - 自动部署到内部 K3s 集群 K8s 配置: - backend-deployment.yaml(Bun 3200 端口 + MySQL 私网连接) - web-deployment.yaml(Nginx 80 端口 + SPA fallback) - backend-ingress.yaml(devperf-api.airlabs.art + TLS) - web-ingress.yaml(devperf.airlabs.art + TLS) - cert-manager-issuer.yaml(Let's Encrypt) 其他: - 前端 Dockerfile 支持 VITE_API_BASE_URL 构建参数 - 后端 Dockerfile 改为直接运行源码(兼容 mysql2) - 侧边栏/全局样式优化 + Git 图表修复 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
37 lines
963 B
JSON
37 lines
963 B
JSON
{
|
|
"name": "devperf-dashboard-backend",
|
|
"version": "1.0.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "bun run --watch src/index.ts",
|
|
"build": "bun build src/index.ts --outdir=dist --target=bun",
|
|
"start": "bun run dist/index.js",
|
|
"db:generate": "drizzle-kit generate",
|
|
"db:migrate": "bun run src/db/migrate.ts",
|
|
"db:seed": "bun run src/db/seed.ts",
|
|
"test": "bun test",
|
|
"typecheck": "tsc --noEmit"
|
|
},
|
|
"dependencies": {
|
|
"@hono/zod-validator": "^0.4.0",
|
|
"bcrypt": "^5.1.1",
|
|
"better-sqlite3": "^11.7.0",
|
|
"croner": "^9.0.0",
|
|
"dayjs": "^1.11.13",
|
|
"drizzle-orm": "^0.36.0",
|
|
"hono": "^4.7.0",
|
|
"jose": "^5.9.0",
|
|
"mysql2": "^3.22.0",
|
|
"uuid": "^11.0.0",
|
|
"zod": "^3.24.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/bcrypt": "^5.0.2",
|
|
"@types/better-sqlite3": "^7.6.12",
|
|
"@types/uuid": "^10.0.0",
|
|
"bun-types": "^1.3.11",
|
|
"drizzle-kit": "^0.28.0",
|
|
"typescript": "^5.7.0"
|
|
}
|
|
}
|