关于 docker-ai-ml
docker-ai-ml 是一项介绍如何通过 Docker 运行本地 AI 模型和 Agent 的技能,涵盖模型推理、GPU 配置、Agent 执行与沙箱隔离。
主要功能
- 01通过 Docker Model Runner 或 Ollama 运行模型
- 02配置推理所需的 GPU 访问
- 03定义并运行 Docker Agent
- 04在沙箱中隔离 Agent 执行
- 05了解模型选择与资源限制
适用场景
- 01在 Docker 中进行本地 LLM 推理
- 02在 Linux 主机上启用 GPU 推理
- 03在受限容器中运行 AI Agent
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ full-stack-skills/ docker-skills --skill docker-ai-ml安装后在 Claude Code 中输入/docker-ai-ml确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlexamples/01-ollama-local.md02-model-runner.mdreferences/01-gpu-setup.md详细介绍
Docker AI/ML — AI 工作负载
关于如何在 Docker 上运行 AI 模型和 Agent 的指南。
适用场景
用户提到以下内容时,始终使用此技能:
- “docker ai”、“docker model”、“model runner”
- “本地 LLM”、“local model”、“offline model”
- “docker agent”、“AI agent”
- “GPU docker”、“nvidia docker”
- “sandbox”、“沙箱”
- “LLM 部署”、“模型部署”
Docker Model Runner
# List available models
docker model ls
# Pull a model
docker model pull ai/gemma3
docker model pull ai/qwen2.5
# Run inference
docker model run ai/gemma3 "Explain Docker in one sentence"
# Interactive chat
docker model run -i ai/gemma3
# API server mode
docker model serve ai/gemma3 --port 11434
# → access at http://localhost:11434/v1
为 AI 编码助手安装技能
# Install skills for Claude Code
docker model skills --claude
# For Codex CLI
docker model skills --codex
GPU 配置
# Install NVIDIA Container Toolkit (once)
# Ubuntu/Debian:
sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker
# Run with GPU access
docker run --gpus all -it nvidia/cuda:12.6-base nvidia-smi
# Specific GPU
docker run --gpus device=0 -it nvidia/cuda:12.6-base
# GPU + Model Runner
docker model run --gpus all ai/llama3.2
Docker Agent
# agent.yaml — Define a multi-agent system
name: my-coding-agent
model:
provider: openai
model: gpt-4o
tools:
- write_file
- execute_command
- web_search
sandbox:
image: node:22-alpine
workdir: /workspace
# Run agent with Docker
docker agent run -f agent.yaml "Fix the bug in src/app.js"
Docker Sandbox
# Isolated execution environment for AI agents
sandbox:
image: python:3.12-slim
network: none # No network access
read_only: true # Read-only filesystem
memory: 512m
cpus: 1
本地 LLM 技术栈
# Ollama (open-source) as alternative
docker run -d --name ollama \
-p 11434:11434 \
-v ollama_data:/root/.ollama \
--gpus all \
ollama/ollama
# Download and run model
docker exec ollama ollama pull llama3.2
docker exec ollama ollama run llama3.2 "Hello"
工作流 — 推荐使用流程
步骤 1:选择推理方案:优先使用 Docker Model Runner(docker model),Ollama 作为备选
步骤 2:检查硬件:GPU 需要 Linux + nvidia-container-toolkit;CPU 推理需要 8-32GB RAM
步骤 3:拉取模型:docker model pull <model> 或 ollama pull <model>
步骤 4:启动服务:docker model run 或 ollama serve + 客户端
步骤 5:验证:发送测试提示词,确认模型正常响应
注意事项 — 常见问题
- GPU 不可用:Docker Desktop 的 Mac/Windows 版对 GPU 直通的支持有限。→ 解决方案:完整的 GPU 支持需要 Linux 主机 + nvidia-container-toolkit;对于 Mac,可使用
docker model卸载推理任务。 - 模型下载体积:LLM 体积较大(2-70 GB)。→ 解决方案:
docker model pull会将模型缓存到~/.docker/models;拉取前使用df -h检查磁盘空间;使用量化模型(Q4/Q8)以减小占用。 - 内存限制:LLM 推理需要大量 RAM(通常为 8-32 GB)。→ 解决方案:使用
docker run --memory=16g model-runner;使用free -h检查 RAM;资源有限时,使用较小的模型(7B 而不是 70B)。 - Model Runner 与 Ollama:Docker Model Runner 原生集成 Docker。Ollama 的生态系统更大。→ 解决方案:需要 Docker 集成时使用
docker model;需要更广泛的模型选择时使用 Ollama;两者可以共存。
能力边界 — 适用与不适用场景
| 分类 | 场景 | 说明 |
|---|---|---|
| ✅ 能做 | 本地模型推理(Docker Model Runner / Ollama) | 拉取并运行开源 LLM,无需 API key |
| ✅ 能做 | GPU 加速推理 | Linux 主机 + nvidia-container-toolkit |
| ✅ 能做 | AI Agent 构建(Docker Agent / Sandboxes) | 多 Agent 协作、沙箱隔离 |
| ⚠️ 需条件 | macOS GPU 推理 | Docker Desktop 支持有限,优先使用 docker model |
| ⚠️ 需条件 | 大模型(70B+)推理 | 需要 32GB+ RAM,可考虑量化模型 |
| ❌ 超范围 | 训练/微调模型 | 需要专用框架(PyTorch/TensorFlow),不在本技能范围内 |
| ❌ 超范围 | 云端 API 调用(OpenAI/Claude) | 非本地推理,请使用对应 SDK |
| ❌ 超范围 | 生产环境模型服务(K8s) | 使用 docker-production + K8s 部署 |
不适用此技能的场景
| ❌ 跳过 | ✅ 改用 |
|---|---|
| Docker 基础知识 | docker-basics |
| 构建自定义模型镜像 | docker-build |
| 生产环境模型服务(K8s) | docker-production |
| 云端 AI API(无需 Docker) | 直接访问 API |
安全与稳定性
- 尽可能使用
--read-only运行模型容器——模型权重为只读。 - 限制模型容器的网络访问。本地推理不需要互联网。
- GPU 直通会使容器直接访问硬件。请结合
--security-opt使用以实现隔离。 - 监控 GPU 内存用量:使用
nvidia-smi查看利用率。
📚 官方文档参考
| 文档 | 地址 |
|---|---|
| Docker AI 概述 | https://docs.docker.com/ai-overview/ |
| Docker Model Runner | https://docs.docker.com/ai/model-runner/ |
| Docker Model Runner 入门 | https://docs.docker.com/ai/model-runner/get-started/ |
| Docker Agent | https://docs.docker.com/ai/docker-agent/ |
| Docker Sandboxes | https://docs.docker.com/ai/sandboxes/ |
| AI/ML 示例 | https://docs.docker.com/reference/samples/ai-ml/ |
🧭 Docker Skills 学习路径
📍 当前位置:
docker-ai-ml— AI/ML 工作负载
← 上一项:docker-testcontainers — 集成测试
常见问题
Q1:如何快速上手此技能?
A:参考上方的快速开始章节,按步骤操作即可。
Q2:遇到版本不兼容问题怎么办?
A:检查依赖版本,使用 lock 文件锁定版本,并参考常见问题章节。
Q3:如何在生产环境中使用?
A:参考最佳实践章节,确保配置正确,并做好监控和日志记录。
Q4:如何优化性能?
A:参考性能优化相关文档,使用缓存、索引等方法。
Q5:如何贡献或反馈问题?
A:在 GitHub 仓库提交 Issue 或 Pull Request。
Q6:是否支持中文?
A:支持中文文档和中文注释,详见国内适配章节。