10分钟搞定AI平台部署:Bisheng Docker Compose一键上手指南

10分钟搞定AI平台部署:Bisheng Docker Compose一键上手指南

【免费下载链接】bisheng Bisheng is an open LLM devops platform for next generation AI applications. 【免费下载链接】bisheng 项目地址: https://gitcode.com/GitHub_Trending/bi/bisheng

你还在为AI平台部署时的复杂配置头疼吗?服务器环境不兼容、依赖包冲突、服务启动顺序混乱——这些问题是否让你耗费数小时却仍无法正常运行系统?本文将带你通过Docker Compose实现Bisheng平台的一键部署,全程无需复杂命令,只需3步即可完成这个集LLM开发、部署、运维于一体的AI平台搭建。

读完本文你将获得:

  • 从零开始部署Bisheng的完整流程
  • 常见部署问题的解决方案
  • 服务架构与配置文件的深度解析
  • 平台健康检查与状态监控的实用技巧

部署前准备

在开始部署前,请确保你的环境满足以下要求:

  • Docker Engine 20.10.0+
  • Docker Compose 2.0+
  • 至少4GB内存(推荐8GB以上)
  • 20GB可用磁盘空间

如果尚未安装Docker环境,可以使用以下命令快速安装(适用于Ubuntu系统):

# 安装Docker
sudo apt-get update && sudo apt-get install -y docker.io docker-compose
# 启动Docker服务
sudo systemctl start docker && sudo systemctl enable docker

获取项目代码库:

git clone https://gitcode.com/GitHub_Trending/bi/bisheng
cd bisheng

核心服务架构解析

Bisheng平台采用微服务架构设计,通过Docker Compose编排了8个核心服务组件,形成完整的AI应用开发环境。以下是各服务的功能说明:

服务名称容器名称主要功能关联配置文件
mysqlbisheng-mysql存储用户数据与系统配置docker/mysql/conf/my.cnf
redisbisheng-redis缓存与会话管理docker/redis/redis.conf
backendbisheng-backendAPI服务与核心业务逻辑docker/bisheng/config/config.yaml
backend_workerbisheng-backend-worker异步任务处理docker/bisheng/entrypoint.sh
frontendbisheng-frontendWeb管理界面docker/nginx/conf.d/default.conf
elasticsearchbisheng-es向量与文本检索docker-compose.yml
milvusbisheng-milvus-standalone向量数据库docker-compose.yml
miniobisheng-milvus-minio对象存储服务docker-compose.yml

服务启动顺序通过depends_on参数严格控制,确保依赖服务就绪后才启动后续组件,如后端服务需等待MySQL和Redis健康检查通过后才会启动。

一键部署步骤

1. 配置文件检查

进入项目的docker目录,确认核心配置文件存在:

cd docker
ls -l docker-compose.yml bisheng/config/config.yaml

关键配置项说明(可根据实际环境调整):

2. 启动服务集群

执行以下命令启动所有服务:

# 后台启动所有服务
docker-compose up -d
# 查看服务状态
docker-compose ps

首次启动时,系统会自动拉取所需镜像,根据网络环境可能需要5-10分钟。成功启动后,你将看到类似以下的服务状态:

NAME                          COMMAND                  STATUS              PORTS
bisheng-backend               "sh entrypoint.sh api"   Up (healthy)        0.0.0.0:7860->7860/tcp
bisheng-backend-worker        "sh entrypoint.sh work…" Up                  7860/tcp
bisheng-es                    "/opt/bitnami/script…"   Up                  0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp
bisheng-frontend              "/docker-entrypoint.…"   Up                  0.0.0.0:3001->3001/tcp
bisheng-milvus-etcd           "etcd -advertise-clie…"   Up (healthy)        2379-2380/tcp
bisheng-milvus-minio          "/usr/bin/docker-ent…"   Up (healthy)        0.0.0.0:9100->9000/tcp, 0.0.0.0:9101->9001/tcp
bisheng-milvus-standalone     "milvus run standalone"   Up (healthy)        0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp
bisheng-mysql                 "docker-entrypoint.s…"   Up (healthy)        0.0.0.0:3306->3306/tcp, 33060/tcp
bisheng-redis                 "docker-entrypoint.s…"   Up (healthy)        0.0.0.0:6379->6379/tcp

3. 验证部署结果

通过以下方式验证平台是否正常运行:

1. 访问Web界面 打开浏览器访问 http://localhost:3001,你应该能看到Bisheng的登录界面。

2. 检查API健康状态

curl http://localhost:7860/health

正常响应应为:{"status":"healthy","timestamp":"2025-10-16T01:21:40Z"}

3. 查看服务日志

# 查看后端服务日志
docker-compose logs -f backend
# 查看前端服务日志
docker-compose logs -f frontend

服务启动流程详解

Bisheng的启动流程由docker/bisheng/entrypoint.sh脚本控制,该脚本支持两种启动模式:

API服务模式(默认):

uvicorn bisheng.main:app --host 0.0.0.0 --port 7860 --no-access-log --workers 8

启动8个工作进程处理API请求,适合生产环境使用。

Worker模式

# 启动知识库任务worker
celery -A bisheng.worker.main worker -l info -c 20 -P threads -Q knowledge_celery -n knowledge@%h
# 启动工作流执行worker
celery -A bisheng.worker.main worker -l info -c 100 -P threads -Q workflow_celery -n workflow@%h
# 启动状态管理worker
python bisheng/linsight/worker.py --worker_num 4 --max_concurrency 5

这种模式启动多个Celery工作进程,分别处理不同类型的异步任务,通过线程池提高并发处理能力。

常见问题解决

1. 服务启动失败

查看具体服务的日志定位问题:

# 替换[service_name]为实际服务名,如mysql、backend等
docker-compose logs [service_name]

常见原因及解决方法:

  • 端口冲突:修改docker-compose.yml中对应服务的端口映射
  • 配置错误:检查环境变量与配置文件的一致性
  • 资源不足:增加系统内存或调整服务的资源限制

2. 前端无法访问后端API

检查Nginx配置是否正确:

# 查看Nginx配置
cat docker/nginx/conf.d/default.conf

确认API请求被正确代理到backend服务:

location ~ ^(/workspace)?/api(/|$) {
    rewrite ^/workspace(/.*)$ $1 break;
    proxy_pass http://backend:7860;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
}

3. 向量数据库连接失败

确认Milvus服务状态:

docker-compose exec milvus milvus health

检查后端服务的Milvus连接配置:

grep BS_MILVUS docker-compose.yml

平台停止与更新

停止服务

# 停止所有服务(保留数据)
docker-compose down
# 停止并删除数据卷(谨慎使用)
docker-compose down -v

更新平台版本

# 拉取最新代码
git pull
# 重新构建并启动服务
docker-compose up -d --build

总结

通过Docker Compose部署Bisheng平台,我们实现了:

  • 环境一致性:消除"在我电脑上能运行"的问题
  • 部署自动化:一条命令完成所有服务的配置与启动
  • 服务隔离:各组件独立运行,避免依赖冲突
  • 扩展灵活:可根据需求增减服务组件

现在你已经掌握了Bisheng平台的完整部署流程,接下来可以访问 http://localhost:3001 开始探索这个强大的LLM开发运维平台。如需深入了解平台功能,可以参考官方文档 src/backend/README.md 或查看项目的示例工作流。

如果你在部署过程中遇到其他问题,欢迎在项目的Issues中反馈,或者参与社区讨论获取帮助。

【免费下载链接】bisheng Bisheng is an open LLM devops platform for next generation AI applications. 【免费下载链接】bisheng 项目地址: https://gitcode.com/GitHub_Trending/bi/bisheng

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值