This commit is contained in:
2026-03-10 23:24:27 +08:00
parent 7a38199dde
commit a48423d817
3 changed files with 207 additions and 50 deletions
+36 -11
View File
@@ -13,6 +13,7 @@
- 仅支持本地模型(无网络下载功能)
- 多模型配置支持
- **提供标准的 OpenAI API 服务**
- **智能部署(自动检测 Git 更新)**
## 快速开始
@@ -237,22 +238,36 @@ server:
## 启动 vLLM 服务器
### 使用构建和部署脚本(推荐)
### 使用智能部署脚本(推荐)
项目提供了 `build_and_run.sh` 脚本,用于一键构建镜像并部署运行:
项目提供了 `build_and_run.sh` 脚本,具有智能检测和自动部署功能:
**智能部署逻辑:**
1. **检测 Git 代码更新**:
- 自动拉取远程仓库最新代码
- 比较本地和远程代码版本
- 检测本地未提交的更改
2. **智能构建决策**:
- ✅ 代码有更新 → 重新构建镜像
- ✅ 本地有更改 → 重新构建镜像
- ✅ 镜像不存在 → 构建镜像
- ⏭️ 代码无更新且镜像存在 → 跳过构建,直接部署
3. **自动部署**:
- 停止并删除旧容器
- 使用新镜像(或现有镜像)启动新容器
```bash
# 赋予执行权限
chmod +x build_and_run.sh
# 构建并运行(默认后台运行)
# 智能部署(自动检测 Git 更新)
./build_and_run.sh
# 仅构建镜像
./build_and_run.sh -b
# 重新构建镜像(不使用缓存)
./build_and_run.sh -r
# 强制重新构建(忽略 Git 状态)
./build_and_run.sh -f
# 仅停止并删除容器
./build_and_run.sh -s
@@ -265,20 +280,30 @@ chmod +x build_and_run.sh
# 交互式运行(前台运行)
./build_and_run.sh -i
# 指定 Git 分支
./build_and_run.sh -b master
```
**脚本选项:**
- `-b, --build-only`:仅构建镜像,不运行容器
- `-r, --rebuild`:重新构建镜像(不使用缓存)
- `-f, --force`:强制重新构建镜像(忽略 Git 状态)
- `-s, --stop`:仅停止并删除容器
- `-d, --detach`:后台运行容器(默认)
- `-i, --interactive`:交互式运行容器
- `-c, --config FILE`:指定配置文件路径
- `-m, --models DIR`:指定模型目录路径
- `-p, --port PORT`:指定服务端口
- `-b, --branch NAME`:指定 Git 分支(默认:main)
- `-h, --help`:显示帮助信息
**使用场景:**
- **首次部署**:直接运行 `./build_and_run.sh`,自动构建并部署
- **日常更新**:运行 `./build_and_run.sh`,自动检测代码更新并重新部署
- **快速重启**:代码无更新时,跳过构建,直接重启容器
- **强制更新**:使用 `-f` 参数强制重新构建
### 手动部署
```bash
@@ -440,5 +465,5 @@ print(response.choices[0].text)
- `README.md` - 项目说明文档
- `model_config.yaml.example` - 配置文件示例
- `params_config.yaml` - 参数配置文件(定义各类参数的类型和验证规则)
- `build_and_run.sh` - 构建和部署脚本
- `build_and_run.sh` - 智能部署脚本(自动检测 Git 更新)
- `scripts/start_vllm.py` - vLLM 启动脚本