Files
resume-agent/docs/DEPLOY.md
T
hypandClaude ae2d9b128d feat: builder 简历生成 + 轻度优化 + 简历导入交付副本
自内部仓库剥离深度优化与 RAG 知识库后的交付版本:
- Builder 对话式简历生成(FSM + 意图路由 LLM 兜底增强)
- 条目级轻度优化:事实覆盖门禁 + STAR/bullet 修复链,功能/简介/成果与技术栈同级保护
- 简历导入:DOCX/PDF 解析、结构归一、手机号脱敏
- PostgreSQL 运行时 + Alembic 迁移链

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-05 11:08:30 +08:00

2.0 KiB
Raw Blame History

部署说明(试点期)

结论:试点不需要容器编排

单台机器即可跑起完整服务:一个后端进程 + 一个 PostgreSQL + 前端静态文件。 后续接入 officeπ 主站时再按公司标准容器化(Dockerfile 可在那时补)。

组成

组件 形式 说明
后端 python -m uvicorn app.asgi:application --port 8000 单进程;试点量级无需多 worker
数据库 PostgreSQL5435 或公司实例) alembic upgrade head 建表;存量 SQLite 用 scripts/migrate_sqlite_to_postgres.py 迁移
前端 npm run buildfrontend/dist Nginx/静态托管;通过 VITE_API_BASE_URL 指向后端

环境变量(backend/.env

变量 必填 说明
OPENAI_API_KEY 是(AI 功能) 兼容网关密钥;留空则全部走规则兜底(仅演示流程)
OPENAI_BASE_URL / OPENAI_MODEL 网关地址与模型
DATABASE_URL 生产必填 postgresql+psycopg://user:pass@host:5435/resume_agent
RESUME_AGENT_TEST_DATABASE_URL 仅测试 测试库
RESUME_AGENT_CORS_ORIGINS 生产必填 逗号分隔的前端来源,接入 officeπ 时加其域名
RESUME_AGENT_INTENT_ROUTER_MODE 建议 on 对话意图路由(off/shadow/on

安全红线(试点必须遵守)

  1. 服务无内置认证:所有接口可匿名调用。只能发布在内网/办公网,或置于带鉴权的网关之后;接入 officeπ 前需补用户绑定与归属校验。
  2. 不要设置 RESUME_AGENT_DEFAULT_TIER=vip:该开关会把所有会话默认提权(后门告警会打日志)。
  3. 不要设置 RESUME_AGENT_API_DOCS=1:生产暴露 /docs 等于公开 API 结构。
  4. 密钥只放 .env(已被 gitignore);仓库内不得出现明文令牌。
  5. 简历文件含用户 PIIbackend/data/(上传件、SQLite)不得外传、不得提交。

健康检查

GET /health 恒返回 {"status": "ok"},供探活。