Initial commit: 浼佷笟寰俊 AI 鏈哄櫒浜哄姪鐞?MVP
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
106
docs/deploy-quick-reference.md
Normal file
106
docs/deploy-quick-reference.md
Normal 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. 配置 HTTPS(Let'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`
|
||||
Reference in New Issue
Block a user