Appearance
容器化与部署
14.1 项目打包 Docker 镜像
14.1.1 Dockerfile 编写
dockerfile
FROM python:3.10-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
EXPOSE 8000
CMD ["python", "app.py"]14.1.2 构建镜像
bash
docker build -t rag-app:latest .14.1.3 镜像优化
- 使用多阶段构建
- 减少镜像层数
- 清理缓存文件
14.2 Docker Compose 一键部署
14.2.1 docker-compose.yml 编写
yaml
version: '3.8'
services:
app:
build: .
ports:
- "8000:8000"
environment:
- OPENAI_API_KEY=${OPENAI_API_KEY}
volumes:
- ./data:/app/data
depends_on:
- milvus
milvus:
image: milvusdb/milvus:latest
ports:
- "19530:19530"
volumes:
- milvus_data:/var/lib/milvus
volumes:
milvus_data:14.2.2 启动服务
bash
docker-compose up -d14.3 本地 / 服务器 / 云平台部署
14.3.1 本地部署
- 开发环境搭建
- 本地测试运行
- 调试和优化
14.3.2 服务器部署
- 物理服务器部署
- 虚拟机部署
- 配置管理和监控
14.3.3 云平台部署
- AWS、Azure、GCP
- 阿里云、腾讯云、华为云
- Serverless 部署
14.4 本章小结
- 学习了 Docker 镜像打包方法
- 掌握了 Docker Compose 一键部署
- 了解了本地、服务器、云平台部署方案
- 熟悉了容器化部署的最佳实践
