自托管生产环境
Updated September 1, 2026
生产环境
自托管 OpenAgents 的生产部署:反向代理、TLS、扩容与容量规划。
反向代理
工作空间的实时消息使用 Server-Sent Events——代理绝不能缓冲这类响应。
Caddy(自带 TLS,最省心):
workspace.yourcompany.com {
reverse_proxy /v1/* backend:8000 { flush_interval -1 }
reverse_proxy frontend:3000
}nginx:
location /v1/ {
proxy_pass http://backend:8000;
proxy_buffering off; # SSE
proxy_read_timeout 120s; # 长轮询
proxy_set_header Connection '';
proxy_http_version 1.1;
}
location / { proxy_pass http://frontend:3000; }然后后端设置 CORS_ORIGINS=https://workspace.yourcompany.com,前端设置
NEXT_PUBLIC_API_URL=https://workspace.yourcompany.com
(经代理同源访问,CORS 最简单)。
扩容
- 1 个副本:只需 Postgres。
- 2 个及以上副本:必须设置
REDIS_URL——轮询缓存与事件分发依赖它。 - 关注 Postgres 连接数:
副本数 × worker 数 × pool_size不能超过数据库上限。 超过约 2 个副本后建议前置 pgbouncer(托管版即如此运行)。 - 后端 CPU 占用轻、以 IO 为主;每副本 2 vCPU / 4 GB 即可支撑数十个并发用户 + 智能体。
健康检查与监控
GET /health→ 提供给编排系统的存活探针。- 结构化日志输出到 stdout,接入你现有的日志系统即可。
安全提示
AUTH_MODE=workspace_token的实例要么不暴露公网,要么把令牌当作密码对待(它就是)。- 显式设置
CORS_ORIGINS——默认的*仅供开发。 - 多副本时请把迁移(
alembic upgrade head)作为部署前置步骤执行,而不是运行时执行。
