Files
Cyrene/Deploy.md
T
AskaEth 8c19b79a02 docs: 新增 README + 更新 Deploy.md + 整理 .gitignore
- 新增 README.md 完整项目概览(架构、功能、快速开始)
- 更新 Deploy.md 修正过时的服务状态和端口信息
- 整理 .gitignore 补充缺失规则并移除无效项

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-22 19:59:47 +08:00

5.7 KiB
Raw Blame History

Cyrene 部署指南

环境要求

  • Go 1.21+
  • Node.js 20+
  • Docker & Docker Compose

快速启动

1. 环境变量配置

cp backend/.env.example backend/.env
# 编辑 backend/.env,至少配置 LLM_API_KEY

2. 启动基础设施

docker compose -f docker-compose.dev.db.yml up -d

此命令启动以下服务:

服务 端口 用途
PostgreSQL + pgvector 5432 关系数据库与向量检索
Redis 6379 缓存与会话
Qdrant 6333 (HTTP) / 6334 (gRPC) 向量数据库
MinIO 9000 (API) / 9001 (Console) 对象存储
NATS 4222 / 8222 (Monitoring) 消息队列

3. 启动后端服务

推荐使用 DevTools 一键管理:

./devtools.sh start all     # 编译并顺序启动所有后端 + 前端
./devtools.sh status        # 查看各服务运行状态
./devtools.sh restart gateway # 单独重启某个服务

或手动逐服务启动(每个在新终端中):

# 1) 记忆服务
cd backend/memory-service && go build -o main ./cmd/main.go && ./main

# 2) 工具引擎
cd backend/tool-engine && go build -o main ./cmd/main.go && ./main

# 3) IoT 调试服务 (模拟智能家居设备)
cd backend/iot-debug-service && go build -o main ./cmd/main.go && ./main

# 4) 语音服务 (可选,需安装 whisper.cpp)
cd backend/voice-service && go build -o main ./cmd/main.go && ./main

# 5) AI-Core (LLM 推理与对话编排)
cd backend/ai-core && go build -o main ./cmd/main.go && ./main

# 6) Gateway (API 网关,最后启动)
cd backend/gateway && go build -o main ./cmd/main.go && ./main

4. 启动前端

cd frontend/web && npm install && npm run dev

访问 http://localhost:5173

5. 启动 DevTools 管理面板 (可选)

cd devtools && npm install && npm start

访问 http://localhost:9090

使用 Docker Compose 完整启动

开发环境

docker compose -f docker-compose.dev.yml up -d

启动所有基础设施 + 6 个后端服务(AI-Core、Gateway、Memory Service、Tool Engine、Voice Service、IoT Debug Service),前端仍需本地启动。

生产环境

docker compose up -d

额外包含 Caddy 反向代理(自动 TLS),前端静态文件由 Gateway 直接托管。

项目架构

Cyrene/
├── frontend/web/             # React 前端 (Vite + TypeScript + Tailwind + Zustand)
├── backend/
│   ├── ai-core/              # AI 推理核心 (LLM 对话编排、人设注入、工具调用、后台思考)
│   ├── gateway/              # API 网关 (JWT 认证、路由、限流、WebSocket Hub)
│   ├── memory-service/       # 记忆服务 (CRUD、语义检索、LLM 提取)
│   ├── tool-engine/          # 工具引擎 (12+ 内置工具:计算器、HTTP、IoT、文件等)
│   ├── voice-service/        # 语音服务 (Edge-TTS + Whisper STT)
│   ├── iot-debug-service/    # IoT 调试服务 (8 个模拟设备:灯/空调/窗帘/传感器/门锁)
│   └── proto/                # Protobuf 定义 (预留)
├── devtools/                 # 开发管理面板 (Express)
├── scripts/                  # 辅助脚本
├── test/                     # E2E 测试 (CDP/Chromium)
├── docs/                     # 文档与调试记录
├── debug/                    # 诊断脚本
├── docker-compose.dev.db.yml # 开发基础设施 (仅 DB)
├── docker-compose.dev.yml    # 开发环境 (DB + 后端服务)
├── docker-compose.yml        # 生产环境 (DB + 后端 + Caddy)
└── Caddyfile                 # 反向代理配置

服务端口

端口 服务
5173 前端 (Vite)
8080 Gateway API
8081 AI-Core API
8083 IoT 调试服务
8091 记忆服务
8092 工具引擎
8093 语音服务
9090 DevTools 管理面板
5432 PostgreSQL
6379 Redis
6333 Qdrant HTTP
6334 Qdrant gRPC
9000 MinIO S3
9001 MinIO Console
4222 NATS
8222 NATS Monitoring

环境变量

参考 backend/.env.example

变量 说明 默认值
ENV 运行环境 development
LLM_API_URL LLM API 地址 https://api.openai.com/v1
LLM_API_KEY LLM API 密钥
LLM_MODEL 主模型 gpt-4o
LLM_FALLBACK_MODEL 回退模型 gpt-4o-mini
POSTGRES_HOST PostgreSQL 主机 localhost
POSTGRES_PORT PostgreSQL 端口 5432
POSTGRES_USER PostgreSQL 用户 cyrene
POSTGRES_PASSWORD PostgreSQL 密码
POSTGRES_DB PostgreSQL 库名 cyrene_ai
REDIS_HOST Redis 主机 localhost
REDIS_PORT Redis 端口 6379
JWT_SECRET JWT 签名密钥
JWT_EXPIRY_HOURS JWT 过期时间 720
MINIO_ENDPOINT MinIO 地址 localhost:9000
MINIO_ACCESS_KEY MinIO Access Key
MINIO_SECRET_KEY MinIO Secret Key
VECTOR_DB_URL Qdrant 地址 http://localhost:6333
ADMIN_USERNAME 管理员账户 admin
ADMIN_PASSWORD 管理员密码
ADMIN_NICKNAME 昔涟对管理员的称呼 管理员
REGISTRATION_ENABLED 开放注册 true
ENABLE_BACKGROUND_THINKING 后台思考 true
INTERNAL_SERVICE_TOKEN 内部服务通信 Token
WEBHOOK_API_KEY Webhook API Key
IOT_SERVICE_URL IoT 服务地址 http://localhost:8083
TTS_PROVIDER TTS 引擎 edge-tts
TTS_VOICE TTS 语音 zh-CN-XiaoxiaoNeural
ASR_PROVIDER ASR 引擎 faster-whisper
ASR_MODEL ASR 模型 medium

平台迁移

从 Linux 迁移到 Windows 的详细指南见 Migration.md