Docker部署AI模型:零基础也能上手
为什么选择Docker部署AI模型
很多新手在本地跑AI模型时常常遇到环境不一致、依赖冲突的问题。
用Docker就能把模型和所需环境打包成一个独立容器,换台服务器也能直接跑。
这篇文章会带你一步步完成 Docker部署AI模型,全程不需要写复杂代码,跟着命令敲就行。
准备工作:一台装了Docker的服务器
1️⃣ 安装Docker
如果你用的是Ubuntu系统,连接服务器后依次输入下面三条命令:
sudo apt update
sudo apt install docker.io -y
sudo systemctl start docker && sudo systemctl enable docker
检查是否安装成功:
docker --version
看到版本号就说明Docker已经就绪。
2️⃣ 确认显卡驱动(如果需要GPU加速)
如果你的AI模型需要GPU(例如PyTorch模型),先确保宿主机已经装了NVIDIA驱动。
输入:
nvidia-smi
如果能看到显卡信息,继续安装 NVIDIA Container Toolkit:
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt update && sudo apt install nvidia-container-toolkit -y
sudo systemctl restart docker
这样Docker容器就能调用GPU了。
核心步骤:拉取镜像并运行AI模型
这里用一个开源的文本生成模型(比如Ollama或vLLM)举例,你也可以换成自己训练的模型。
1️⃣ 拉取预置镜像
以Ollama为例,它内置了Llama、Mistral等模型,非常适合新手:
docker pull ollama/ollama
如果需要GPU版本,使用:
docker pull ollama/ollama:latest
2️⃣ 启动容器并挂载模型目录
为了让容器重启后模型文件不丢失,建议把模型数据挂载到宿主机目录:
mkdir -p /data/ollama
然后运行容器(带GPU支持):
docker run -d --gpus all -v /data/ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
-d:后台运行--gpus all:使用所有GPU-v /data/ollama:/root/.ollama:宿主机的/data/ollama对应容器内的模型存储目录-p 11434:11434:将容器的API端口映射到宿主机
3️⃣ 下载模型并测试
进入容器内部:
docker exec -it ollama bash
然后运行一个轻量模型:
ollama run llama3.2:1b
等待下载完成后,你可以在命令行直接跟模型对话。
退出用 /bye。
常见坑和避坑指南
❌ 端口被占用
如果运行容器时提示 port is already allocated,说明宿主机11434端口已被占用。
你可以换一个端口,比如:
docker run -d --gpus all -v /data/ollama:/root/.ollama -p 11435:11434 --name ollama2 ollama/ollama
❌ 磁盘空间不足
模型文件通常很大(几个GB到几十GB)。
建议先用 df -h 检查 /data 所在分区,如果空间不够,把挂载目录改到空间充足的位置。
❌ 容器启动后马上退出
使用 docker logs ollama 查看日志。
常见原因是GPU驱动不匹配或缺少依赖。
检查 nvidia-smi 和 nvidia-container-toolkit 是否正确安装。
验证部署是否成功
你可以通过Web请求测试模型API(如果模型暴露了HTTP接口)。
Ollama默认在 11434 端口提供API。
在宿主机上运行:
curl http://localhost:11434/api/generate -d '{
"model": "llama3.2:1b",
"prompt": "你好,请用一句话介绍Docker。"
}'
如果返回类似以下JSON,说明模型已成功运行:
{"model":"llama3.2:1b","response":"Docker是一种容器化技术,可以快速部署应用。","done":true}
你也可以通过浏览器访问 http://你的服务器IP:11434(部分镜像提供Web界面)。
总结
用Docker部署AI模型的核心思路就是:选对镜像、挂好数据、映射端口、驱动对齐。
按照本文的步骤,你可以在十几分钟内让一个AI模型跑起来。
遇到问题时优先回看避坑部分,或者用 docker logs 查看日志。
如果你希望部署自己的模型,只需把模型文件放到挂载目录(例如 /data/ollama/models),然后重启容器即可。
熟练之后,你还可以用 Docker Compose 管理多个AI服务,打造你的专属AI平台。