部署指南
本地开发
# 1. 安装依赖
pip install websockets aiohttp structlog
# 2. 启动 WebSocket 中继服务器
cd relay-server
python3 start_server.py
# 3. 启动会话管理器
cd phase1/session_manager
python3 start_manager.py
# 4. 访问 Web UI
# http://localhost:8000/web/ui/index.html
Docker 部署
# 构建镜像
docker build -t zhineng-bridge:latest .
# 运行
docker run -d \
-p 8765:8765 \
-p 8080:8080 \
-v $(pwd)/data:/app/data \
-e SECRET_KEY=your-secret-key \
zhineng-bridge:latest
Kubernetes 部署
项目包含完整的 K8s 清单(k8s/ 目录):
# 按顺序应用
kubectl apply -f k8s/namespace.yaml
kubectl apply -f k8s/secrets.yaml
kubectl apply -f k8s/configmap.yaml
kubectl apply -f k8s/deployment.yaml
kubectl apply -f k8s/service.yaml
kubectl apply -f k8s/ingress.yaml
kubectl apply -f k8s/hpa.yaml
配置项
| 环境变量 | 默认值 | 说明 |
|---|---|---|
WS_PORT |
8765 | WebSocket 端口 |
HTTP_PORT |
8080 | HTTP API 端口 |
DB_PATH |
data/zhineng.db | SQLite 数据库路径 |
SECRET_KEY |
— | JWT 签名密钥(生产环境必须设置) |
LOG_LEVEL |
INFO | 日志级别 |
HPA 自动扩缩容
默认配置: - 最小副本:2 - 最大副本:10 - CPU 阈值:70% - 内存阈值:80%
部署脚本
监控
健康检查
日志
使用 structlog 结构化日志,支持 JSON 输出。
性能监控
phase4/monitoring/ 提供性能仪表板,监控:
- 页面加载时间
- WebSocket 延迟
- 内存使用
- FPS
- 会话创建耗时
备份
安全注意事项
- 生产环境必须设置
SECRET_KEY - 启用 HTTPS(通过 Ingress 或反向代理)
- 定期更新依赖
- 使用防火墙限制端口访问
- 启用 2FA 保护管理员账户