Initial commit: 浼佷笟寰俊 AI 鏈哄櫒浜哄姪鐞?MVP

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
bujie9527
2026-02-05 16:36:32 +08:00
commit 59275ed4dc
126 changed files with 9120 additions and 0 deletions

View File

@@ -0,0 +1,106 @@
# 生产部署快速参考
## 一、首次部署5 分钟)
```bash
# 1. 克隆项目
git clone https://github.com/your-org/wecom-ai-assistant.git
cd wecom-ai-assistant
# 2. 配置环境变量
cp .env.prod.example .env.prod
nano .env.prod # 填写必需变量
# 3. 启动服务
chmod +x deploy/scripts/*.sh
./deploy/scripts/start.sh
# 4. 配置 HTTPSLet's Encrypt
export DOMAIN=your-domain.com
export EMAIL=your-email@example.com
sudo certbot certonly --nginx -d $DOMAIN --email $EMAIL --agree-tos --non-interactive
# 5. 更新 Nginx 配置(使用实际域名替换 nginx.conf 中的 _
# 然后重启: docker-compose -f docker-compose.prod.yml restart nginx
```
## 二、常用命令
```bash
# 启动服务
./deploy/scripts/start.sh
# 停止服务
./deploy/scripts/stop.sh
# 更新服务
./deploy/scripts/update.sh latest
# 查看日志
docker-compose -f docker-compose.prod.yml logs -f backend
# 查看服务状态
docker-compose -f docker-compose.prod.yml ps
# 健康检查
curl https://your-domain.com/api/health
```
## 三、GitHub Actions 自动部署
### 配置 Secrets
在 GitHub 仓库设置中添加:
- `PROD_HOST`: 服务器 IP
- `PROD_USER`: SSH 用户名
- `PROD_SSH_KEY`: SSH 私钥
- `PROD_DOMAIN`: 生产域名
- `PROD_APP_PATH`: 应用路径(可选)
### 部署流程
1. 推送代码到 `main` 分支
2. GitHub Actions 自动构建并部署
3. 查看部署日志:`https://github.com/your-org/wecom-ai-assistant/actions`
## 四、关键文件
| 文件 | 说明 |
|------|------|
| `.env.prod` | 生产环境变量(不提交到 Git |
| `docker-compose.prod.yml` | 生产环境 Docker Compose 配置 |
| `deploy/docker/backend.Dockerfile` | Backend 生产镜像构建文件 |
| `deploy/docker/nginx.conf` | Nginx 生产配置 |
| `deploy/scripts/start.sh` | 启动脚本 |
| `deploy/scripts/update.sh` | 更新脚本 |
| `.github/workflows/deploy.yml` | GitHub Actions 部署 workflow |
## 五、故障排查
```bash
# 查看服务日志
docker-compose -f docker-compose.prod.yml logs backend
# 检查服务状态
docker-compose -f docker-compose.prod.yml ps
# 检查环境变量
docker-compose -f docker-compose.prod.yml config
# 检查 SSL 证书
sudo certbot certificates
# 测试健康检查
curl -v https://your-domain.com/api/health
```
## 六、回滚
```bash
# 回滚到指定版本
export IMAGE_TAG=v0.9.0
docker-compose -f docker-compose.prod.yml --env-file .env.prod pull
docker-compose -f docker-compose.prod.yml --env-file .env.prod up -d
```
**详细文档**:参见 `docs/deploy.md`