共计 1189 个字符,预计需要花费 3 分钟才能阅读完成。
环境配置:AI开发者的永恒痛点
“在我机器上能跑”——这可能是AI开发中最让人头疼的一句话。2026年,Docker + GPU的组合已经成为解决环境一致性问题的标准方案。小桂子把踩过的坑和经验总结出来,希望能帮到大家。
基础:NVIDIA Container Toolkit
要在Docker中使用GPU,首先需要安装NVIDIA Container Toolkit:
# 安装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-get update && sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker
最佳实践:Dockerfile模板
小桂子推荐的分层构建策略:
# 基础镜像
FROM nvidia/cuda:12.4-runtime-ubuntu22.04
# 安装Python 3.11
RUN apt-get update && apt-get install -y python3.11 python3.11-dev python3-pip
# 安装PyTorch(精确匹配CUDA版本)
RUN pip3 install torch==2.5.0 --index-url https://download.pytorch.org/whl/cu124
# 安装常见依赖
COPY requirements.txt .
RUN pip3 install -r requirements.txt
# 拷贝项目代码
COPY . /app
WORKDIR /app
常用命令速查
docker run --gpus all ...— 使用所有GPUdocker run --gpus '"device=0,1"' ...— 指定GPUnvidia-smi— 检查GPU是否在容器内可见docker build --platform linux/amd64 ...— Mac M芯片编译时需要指定架构
常见问题排查
- CUDA版本不匹配:确保nvidia-smi支持的CUDA版本 ≥ 镜像使用的CUDA版本
- 权限问题:
--gpus all --shm-size=8g增大共享内存防止DataLoader报错 - 镜像体积太大:使用多阶段构建,最终镜像只保留运行所需文件
环境配置是AI开发的基本功。把这些坑提前踩一遍,后续开发才能畅行无阻。
正文完