AI大模型应用开发之容器化部署

专门为新手设计的「容器化部署 + AI 服务落地」完整指南

搞懂 Docker 在干什么 → 会写 Dockerfile → 会用 Docker Compose 编排 → 知道 K8s 在什么时候该用 → 能把 RAG + Agent 跑成一个"像样的服务"


一、先一句话搞懂容器化在干什么

容器化 = 把"代码 + 运行环境"一起打包,在哪都能跑

📌 你不再关心:

  • Python 版本
  • 依赖冲突
  • "我这能跑,你那不行"

二、Docker 是什么?(新手版)

1️⃣ Docker 的三个核心概念(必背)

名词 一句话
镜像(Image) 程序的"安装包"
容器(Container) 正在运行的程序
Dockerfile 制作镜像的说明书

📌 口诀:

Dockerfile 做镜像,镜像跑容器


2️⃣ Docker 镜像分层原理(非常重要)

📌 一句话

Docker 镜像是"一层一层叠起来"的


🌰 类比(强烈推荐)

做一个汉堡:

text 复制代码
面包底
+ 牛肉
+ 生菜
+ 酱

Docker 镜像:

text 复制代码
基础系统层
+ Python 层
+ 依赖层
+ 你的代码层

📌 分层有什么好处?

1️⃣ 复用

  • Python 层不用每次重新下载

2️⃣ 构建快

  • 改代码只重新构建"代码层"

3️⃣ 省空间

📌 记忆口诀:

没变的层不重建


三、Docker 镜像怎么写?(最小可用)

1️⃣ 一个 AI 服务常见 Dockerfile

dockerfile 复制代码
FROM python:3.10-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install -r requirements.txt

COPY . .

CMD ["python", "main.py"]

📌 新手只要理解:

  • FROM:基础环境
  • RUN:装依赖
  • COPY:拷代码
  • CMD:启动程序

四、Docker Compose 是干什么的?

📌 一句话

Docker Compose = 一次启动多个 Docker 服务


🌰 类比

你要启动:

  • RAG 服务
  • Agent 服务
  • 向量数据库
  • Redis

不用一个个 docker run

👉 Compose 帮你一起管


Compose 的三大好处

1️⃣ 一个 docker-compose up

2️⃣ 自动建网络

3️⃣ 服务之间用名字通信

📌 口诀:

一个文件,起一堆服务


五、RAG + Agent 服务的整体架构(新手版)

text 复制代码
用户
 ↓
Agent API
 ↓
RAG 服务
 ↓
向量数据库(Chroma / FAISS)
 ↓
大模型 API

六、用 Docker Compose 部署 RAG + Agent(完整示例)

🎯 目标

一条命令,启动一个 AI 系统


1️⃣ 项目结构(推荐)

text 复制代码
project/
├─ agent/
│  ├─ main.py
│  └─ Dockerfile
├─ rag/
│  ├─ main.py
│  └─ Dockerfile
├─ data/
├─ docker-compose.yml

2️⃣ agent/Dockerfile

dockerfile 复制代码
FROM python:3.10-slim
WORKDIR /app
COPY . .
RUN pip install langchain openai
CMD ["python", "main.py"]

3️⃣ rag/Dockerfile

dockerfile 复制代码
FROM python:3.10-slim
WORKDIR /app
COPY . .
RUN pip install langchain chromadb sentence-transformers
CMD ["python", "main.py"]

4️⃣ docker-compose.yml(核心)

yaml 复制代码
version: "3.8"

services:
  agent:
    build: ./agent
    ports:
      - "8000:8000"
    depends_on:
      - rag

  rag:
    build: ./rag
    volumes:
      - ./data:/data

📌 你现在可以:

bash 复制代码
docker-compose up --build

👉 一个完整 AI 系统启动了


七、什么是"水平扩容"?(非常重要)

📌 一句话

水平扩容 = 多开几份同样的服务,一起干活


🌰 类比

一个客服太忙了?

👉 再来 3 个客服


Docker Compose 怎么扩容?

bash 复制代码
docker-compose up --scale agent=3

📌 现在你有:

  • agent_1
  • agent_2
  • agent_3

⚠️ 注意

  • 需要 负载均衡器(如 Nginx)
  • 服务必须 无状态

八、Kubernetes(K8s)到底是干嘛的?

📌 一句话

K8s = 自动管理"成百上千个容器"的系统


Docker Compose vs K8s(新手理解版)

对比 Compose K8s
学习成本 低 高
本地开发 ✅ ❌
自动扩缩容 ❌ ✅
生产环境 一般 标准

📌 新手建议:

先 Compose,后 K8s


K8s 里和你现在最相关的 3 个概念

概念 类比
Pod 一个容器组
Deployment 管理副本
Service 负载均衡

九、大模型服务如何做"真正的水平扩容"?

📌 核心前提(非常重要)

服务必须是"无状态"的

❌ 不要:

  • 把对话存在内存
  • 把用户状态写死

✅ 要:

  • 状态放 Redis
  • 向量放数据库

标准架构

text 复制代码
负载均衡
 ↓
Agent 容器 × N
 ↓
Redis / 向量数据库

十、新手最容易踩的坑

❌ Dockerfile 把所有东西写一层

❌ Compose 里硬编码 IP

❌ 服务有状态还想扩容

❌ 一开始就上 K8s


十一、终极新手记忆口诀(强烈建议背)

Docker 管环境,
Compose 管服务,
扩容靠无状态,
K8s 管规模。


十二、推荐学习顺序(实用)

1️⃣ 会写 Dockerfile

2️⃣ 会用 docker-compose

3️⃣ 把 RAG 跑成服务

4️⃣ Agent 无状态化

5️⃣ 再学 K8s

十三、参考文档

Docker 官方文档

B 站 "K8s 快速入门"


有任何问题欢迎在评论区交流。

相关推荐
u1301304 分钟前
AI 日报(2026年10月17日)
人工智能
Teable任意门互动4 分钟前
项目管理数字化落地案例|任意门互动科技(Teable 官方合作伙伴)以多维表格搭建项目管理平台
人工智能·开源·软件工程·飞书·开源软件·数据库开发
余槐i5 分钟前
transformers 升级后加载旧权重报错:三处不兼容如何逐一验证
python·大模型·transformers·模型量化·模型推理
这张生成的图像能检测吗11 分钟前
(论文速读)CurveNet:沿点云学习几何曲线,让局部特征看见长距离形状
人工智能·计算机视觉·点云·3d技术
AI模型调用笔记15 分钟前
OpenAI API 故障切换:超时容灾三大坑
人工智能·语言模型
TMT星球20 分钟前
2026阅文创作大会:首批AI精品动画亮相,推出OPC一站式平台与IP委员会模式
人工智能·网络协议·tcp/ip
YHHLAI28 分钟前
造一个“读过《天龙八部》“的 AI 助手 —— advance-rag
人工智能·rag
MobotStone33 分钟前
那些藏在AI应用工具里的「专家」,到底能帮我们干什么?
人工智能
项目題供诗37 分钟前
ai大模型(二)
人工智能
CCblandy41 分钟前
向量检索 ANN 参数实测:换一种数据分布,recall 掉了 51 个百分点
人工智能·python·算法·自然语言处理·性能优化