Docker 部署
Docker 镜像准备
准备 Docker 镜像有两种方式:
- 直接拉取官方镜像
- 本地构建,参考 构建 Docker 镜像
实际使用时二选一即可。
使用代理模型部署
这种部署方式不需要 GPU 环境。
- 从官方镜像仓库拉取镜像:Eosphoros AI Docker Hub
docker pull eosphorosai/dbgpt-openai:latest
- 运行 Docker 容器
此示例要求你提供可用的 SiliconFlow API Key。你可以在 SiliconFlow 注册,并在 API Key 页面 创建。也可以通过设置 AIMLAPI_API_KEY 来使用 AI/ML API 服务。
docker run -it --rm -e SILICONFLOW_API_KEY=${SILICONFLOW_API_KEY} \
-p 5670:5670 --name dbgpt eosphorosai/dbgpt-openai
或者使用 AI/ML API:
docker run -it --rm -e AIMLAPI_API_KEY=${AIMLAPI_API_KEY} \
-p 5670:5670 --name dbgpt eosphorosai/dbgpt-openai
请将 ${SILICONFLOW_API_KEY} 或 ${AIMLAPI_API_KEY} 替换成你自己的 API Key。
之后就可以在浏览器访问 http://localhost:5670。
使用 GPU(本地模型)部署
这种部署 方式需要 GPU 环境。
在运行 Docker 容器之前,需要先安装 NVIDIA Container Toolkit。详情请参考官方文档:NVIDIA Container Toolkit。
在这种部署方式中,你将使用本地模型,而不是在容器中临时从 Hugging Face 或 ModelScope 下载。如果你已经提前把模型下载到本地,或者想使用其他来源的模型,这种方式会更方便。
第 1 步:下载模型
在运行 Docker 容器之前,需要先将模型下载到本地机器。你可以选择 Hugging Face 或 ModelScope(中国用户推荐)进行下载。
- 从 ModelScope 下载
- 从 Hugging Face 下载
-
如果还没有安装,请先安装
git和git-lfs:sudo apt-get install git git-lfs -
在当前工作目录创建
models目录:mkdir -p ./models -
使用
git将模型仓库克隆到models目录:cd ./models
git lfs install
git clone https://www.modelscope.cn/Qwen/Qwen2.5-Coder-0.5B-Instruct.git
git clone https://www.modelscope.cn/BAAI/bge-large-zh-v1.5.git
cd ..模型会被下载到
./models/Qwen2.5-Coder-0.5B-Instruct和./models/bge-large-zh-v1.5目录下。
-
如果还没有安装,请先安装
git和git-lfs:sudo apt-get install git git-lfs -
在当前工作目录创建
models目录:mkdir -p ./models -
使用
git将模型仓库克隆到models目录:cd ./models
git lfs install
git clone https://huggingface.co/Qwen/Qwen2.5-Coder-0.5B-Instruct
git clone https://huggingface.co/BAAI/bge-large-zh-v1.5
cd ..模型会被下载到
./models/Qwen2.5-Coder-0.5B-Instruct和./models/bge-large-zh-v1.5目录下。
第 2 步:准备配置文件
创建一个名为 dbgpt-local-gpu.toml 的配置文件,并填入以下内容:
[models]
[[models.llms]]
name = "Qwen2.5-Coder-0.5B-Instruct"
provider = "hf"
# 指定模型在本地文件系统中的路径
path = "/app/models/Qwen2.5-Coder-0.5B-Instruct"
[[models.embeddings]]
name = "BAAI/bge-large-zh-v1.5"
provider = "hf"
# 指定模型在本地文件系统中的路径
path = "/app/models/bge-large-zh-v1.5"
该配置文件用于指定 Docker 容器内模型的本地挂载路径。
第 3 步:运行 Docker 容器
运行 Docker 容器,并挂载本地 models 目录:
docker run --ipc host --gpus all \
-it --rm \
-p 5670:5670 \
-v ./dbgpt-local-gpu.toml:/app/configs/dbgpt-local-gpu.toml \
-v ./models:/app/models \
--name dbgpt \
eosphorosai/dbgpt \
dbgpt start webserver --config /app/configs/dbgpt-local-gpu.toml
命令说明:
--ipc host:启用 host IPC 模式以获得更好的性能。--gpus all:允许容器使用所有可用 GPU。-v ./dbgpt-local-gpu.toml:/app/configs/dbgpt-local-gpu.toml:将本地配置文件挂载到容器内。-v ./models:/app/models:将本地models目录挂载到容器内。eosphorosai/dbgpt:使用的 Docker 镜像。dbgpt start webserver --config /app/configs/dbgpt-local-gpu.toml:使用指定配置文件启动 webserver。
第 4 步:访问应用
容器启动后,可以在浏览器访问 http://localhost:5670。