优云智算
控制台
立即注册

llm-backend-image

大模型后端一体化 Docker 镜像,集成 vLLM、MinerU、Kafka、Redis、MySQL、Elasticsearch、Neo4j 等常用组件,开箱即用,快速部署,降低环境搭建成本。

镜像大小
50 GB
当前版本
v1.0
累计部署
0 次
累计运行
0 h
最近更新
2026-11-11

运行环境

框架版本
-0.25.1
CUDA版本
13.2
应用
JupyterLab: 8888
支持卡型
RTX40系

大模型后端全家桶 Docker Image

一站式集成大模型推理、文档解析、消息队列、缓存、数据库、搜索引擎、图数据库及工作流服务。

一、镜像介绍

本镜像面向 LLM 应用开发、RAG 知识库、AI Agent、多模态文档处理及大模型后端系统 等应用场景,预置常用 AI 框架和基础中间件。

集成 vLLM、MinerU、Redis、Kafka、Elasticsearch、MySQL、Nginx、Temporal、Neo4j 等组件,减少重复安装、环境配置及依赖管理工作。

开发者可以直接在容器中按需启动相应服务,快速搭建完整的大模型后端开发与测试环境。

核心优势:

  • 开箱即用:常用 AI 框架与中间件预先集成。
  • 统一环境:减少软件版本和环境依赖冲突。
  • 按需启动:根据项目需要灵活启用不同服务。
  • 快速开发:降低 AI 应用基础环境搭建成本。
  • 覆盖全面:满足模型推理、文档解析、数据存储、检索和工作流等需求。

二、功能特性

组件功能说明默认端口
vLLM大语言模型推理与 OpenAI 兼容 API8000
MinerUPDF 文档解析与内容提取—
Redis 7.2.5高性能缓存、键值存储6379
Kafka 4.4.0消息队列、异步通信9092
Elasticsearch 8.15.3全文检索、中文分词、向量检索9200
MySQL关系型数据库3306
NginxWeb 服务、反向代理80
Temporal分布式工作流与任务编排7233 / 8233
Neo4j 2026.10.1图数据库、知识图谱7474 / 7687

以上端口为各组件常用或示例配置端口,实际监听地址、端口和功能以镜像内配置为准。各服务默认不保证自动启动,需按需执行启动命令。

三、使用教程

3.1 启动 Docker 容器

使用 Docker 启动镜像:

docker run -it \
  --name llm-backend \
  -p 8000:8000 \
  -p 6379:6379 \
  -p 9092:9092 \
  -p 9200:9200 \
  -p 3306:3306 \
  -p 80:80 \
  -p 7233:7233 \
  -p 8233:8233 \
  -p 7474:7474 \
  -p 7687:7687 \
  <镜像名>:<标签> \
  bash

将 <镜像名>:<标签> 替换为实际镜像名称。

如使用 GPU 推理,请确认安装 NVIDIA Container Toolkit,并根据环境增加 --gpus all 参数。

此命令适用于本地开发与测试。生产部署时请根据需要映射端口,配置数据持久化、身份认证和网络访问策略。Kafka 等服务的外部访问可能还需要额外配置监听地址。

3.2 vLLM — 大模型推理

vLLM 提供高性能大语言模型推理服务,兼容 OpenAI API 接口。

启动服务

cd /workspace

vllm serve models/Qwen3.5-0.8B/

模型目录需要提前存在于容器中。

使用 curl 测试

curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "models/Qwen3.5-0.8B/",
    "messages": [
      {
        "role": "user",
        "content": "你好,什么是机器学习?"
      }
    ],
    "temperature": 0.7,
    "max_tokens": 256
  }'

使用 Python 测试

from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:8000/v1",
    api_key="EMPTY"
)

resp = client.chat.completions.create(
    model="models/Qwen3.5-0.8B/",
    messages=[
        {
            "role": "user",
            "content": "你好,介绍一下你自己"
        }
    ],
    temperature=0.7,
    max_tokens=256
)

print(resp.choices[0].message.content)

model 应与 /v1/models 接口返回的模型 ID 保持一致。未启用 API Key 验证时可使用 EMPTY。

3.3 MinerU — 智能文档解析

MinerU 用于 PDF 文档内容提取与结构化解析,适用于 RAG 知识库、文档检索及数据预处理等场景。

解析 PDF

cd /workspace

mineru-kit parse pdf/test2.pdf \
  --format zip \
  -o output.zip \
  --tier advanced

解析结果输出为 output.zip。

3.4 Redis — 缓存服务

Redis 可用于缓存、会话管理、任务状态存储等场景。

启动 Redis

/workspace/software/redis-7.2.5/src/redis-server \
  /workspace/software/redis-7.2.5/redis.conf

连接测试

/workspace/software/redis-7.2.5/src/redis-cli ping

正常情况下返回:

PONG

3.5 Kafka — 消息队列

Kafka 适用于消息传递、异步任务处理和事件驱动架构。

启动 Kafka

/workspace/software/kafka_2.13-4.4.0/bin/kafka-server-start.sh \
  /workspace/software/kafka_2.13-4.4.0/config/server.properties

创建 Topic

cd /workspace/software/kafka_2.13-4.4.0

bin/kafka-topics.sh --create \
  --topic test-topic \
  --bootstrap-server localhost:9092 \
  --partitions 1 \
  --replication-factor 1

生产消息

bin/kafka-console-producer.sh \
  --topic test-topic \
  --bootstrap-server localhost:9092

输入任意消息并回车发送。

消费消息

在新的终端执行:

cd /workspace/software/kafka_2.13-4.4.0

bin/kafka-console-consumer.sh \
  --topic test-topic \
  --bootstrap-server localhost:9092 \
  --from-beginning

如果消费者能够收到生产者发送的消息,说明消息收发正常。

3.6 Elasticsearch — 搜索引擎

Elasticsearch 支持全文检索、数据索引和向量检索,可作为 RAG 检索系统的基础组件。

启动 Elasticsearch

先切换用户:

su esuser

启动服务:

/workspace/software/elasticsearch-8.15.3/bin/elasticsearch

中文分词测试

curl -s -X POST \
  'http://localhost:9200/_analyze' \
  -H 'Content-Type: application/json' \
  -d '{
    "analyzer": "ik_max_word",
    "text": "中华人民共和国国歌"
  }'

正常情况下返回分词 Token 信息。

此示例要求 Elasticsearch 已安装并配置 IK 分词插件,且当前 HTTP 接口允许访问。若启用了 HTTPS 或身份认证,请相应调整请求。

3.7 MySQL — 关系型数据库

MySQL 用于持久化存储用户信息、业务数据及应用配置。

启动 MySQL

mysqld \
  --user=mysql \
  --datadir=/var/lib/mysql \
  --socket=/var/run/mysqld/mysqld.sock \
  --port=3306

登录 MySQL

mysql -u root -p

根据提示输入数据库密码。

查看数据库

SHOW DATABASES;

3.8 Nginx — Web 服务

Nginx 可提供静态资源服务、反向代理和请求转发功能。

启动 Nginx

nginx && sleep 1 && \
ps -ef | grep nginx | grep -v grep

配置检查

nginx -t

3.9 Temporal — 工作流编排

Temporal 可用于复杂 AI Agent 工作流、长时间运行任务、异步编排及任务状态管理。

启动 Temporal

env \
  -u HTTP_PROXY \
  -u HTTPS_PROXY \
  -u ALL_PROXY \
  -u http_proxy \
  -u https_proxy \
  -u all_proxy \
  /workspace/software/temporal server start-dev \
  --ip 0.0.0.0 \
  --ui-ip 0.0.0.0 \
  --log-level debug

运行示例

在 /workspace 中执行:

cd /workspace

# 启动 Worker
python temporal_test.py worker &

# 执行工作流
python temporal_test.py run --name "张三"

需要确保示例脚本 temporal_test.py 已存在。

Web 管理界面

http://localhost:8233

start-dev 为开发测试模式,不建议直接作为生产环境的部署方案。

3.10 Neo4j — 图数据库

Neo4j 适用于知识图谱、实体关系分析、GraphRAG 等场景。

启动 Neo4j

env \
  -u HTTP_PROXY \
  -u HTTPS_PROXY \
  -u ALL_PROXY \
  -u http_proxy \
  -u https_proxy \
  -u all_proxy \
  /workspace/software/neo4j-community-2026.10.1/bin/neo4j console

Web 管理界面

http://localhost:7474

Bolt 连接端口

7687

可通过 Neo4j Browser 执行 Cypher 查询,实现图数据管理。

四、环境验证

启动所需服务后,可以使用以下命令检查运行状态。

服务验证命令 / 地址正常结果
vLLMcurl localhost:8000/v1/models返回模型列表
Redisredis-cli ping返回 PONG
Kafkabin/kafka-topics.sh --list --bootstrap-server localhost:9092返回 Topic 列表
Elasticsearchcurl localhost:9200返回 ES 服务信息
MySQLmysql -u root -p可以成功登录
Nginxnginx -t配置检测成功
Temporalhttp://localhost:8233管理界面可访问
Neo4jhttp://localhost:7474Browser 界面可访问

注意:

  • 以上检查应在对应服务启动后执行。
  • 命令默认从容器内部执行,浏览器地址可以在正确映射端口后从宿主机访问。
  • Kafka 验证命令需在其安装目录执行,Redis 需使用镜像内实际的 redis-cli 路径。
  • 如服务启用了认证或 TLS,需要使用相应凭据和访问协议。

五、常见问题(FAQ)

Q1:镜像中的所有服务会自动启动吗?

不一定。镜像预置相关组件,但各服务是否自动启动取决于容器的启动配置。

可以按照本 README 提供的命令按需启动,避免不必要的资源占用。

Q2:vLLM 无法正常启动怎么办?

建议检查:

  1. 模型目录是否真实存在。
  2. CUDA 和 GPU 驱动是否兼容。
  3. 容器是否能够访问 GPU。
  4. GPU 显存是否充足。
  5. vLLM 是否支持目标模型架构。

可执行:

nvidia-smi

查看 GPU 状态(需宿主机及容器正确配置 GPU 环境)。

Q3:容器内的服务为什么无法从宿主机访问?

通常与以下因素有关:

  • Docker 未映射对应服务端口。
  • 服务仅监听 127.0.0.1。
  • 宿主机防火墙限制访问。
  • Kafka 的 advertised.listeners 配置与客户端访问地址不一致。

需要根据服务实际配置检查监听地址、端口映射和网络策略。

Q4:如何查看端口是否被监听?

ss -lntp

也可以查看进程:

ps -ef

Q5:MySQL、Redis、ES 和 Neo4j 的数据会持久保存吗?

Docker 容器可写层的数据不适合作为可靠的长期持久化方案。

建议为数据库及其他有状态服务配置 Docker Volume 或宿主机目录映射,并根据实际配置文件确认对应数据目录。

Q6:可以用于生产环境吗?

该镜像主要面向开发、调试、演示和测试场景。

正式生产部署前建议:

  • 为各服务配置独立认证凭据。
  • 修改预设密码并妥善保管密钥。
  • 按需暴露网络端口,避免直接开放数据库服务。
  • 配置持久化存储、日志管理和资源限制。
  • 根据实际负载和服务依赖规划部署方式。
  • 对所有组件进行版本兼容、安全配置及稳定性验证。

六、适用场景

本镜像适用于:

  • LLM 推理服务:基于 vLLM 构建模型推理 API。
  • RAG 知识库系统:结合 MinerU、Elasticsearch 和数据库完成文档解析、索引与检索。
  • AI Agent 应用:利用 Temporal 实现工作流编排与任务管理。
  • GraphRAG 知识图谱:利用 Neo4j 构建实体关系网络。
  • 大模型后端开发:使用 Redis、Kafka、MySQL 等组件构建业务系统。
  • AI 技术验证环境:快速测试各类大模型后端组件的集成能力。

大模型后端全家桶 Docker Image

一镜集成常用组件,让开发者将更多精力投入到 AI 应用与业务逻辑本身。

快速部署 · 统一环境 · 降低搭建成本

0 个镜像 · 被使用 0 次
版本日志
v1.0最新
2026-11-11
大模型后端一体化 Docker 镜像,集成 vLLM、MinerU、Kafka、Redis、MySQL、Elasticsearch、Neo4j 等常用组件,开箱即用,快速部署,降低环境搭建成本。
评分
0.0
暂无评分
我的评分
未评分
llm-backend-image一键部署 | 优云智算