是的,Docker 可以安装和使用 CUDA,但需要满足一些特定条件。
确保宿主机已安装正确的 NVIDIA 驱动:
nvidia-smi # 验证驱动是否正确安装
# 添加仓库
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
运行带有 CUDA 支持的容器:
docker run --gpus all nvidia/cuda:11.0-base nvidia-smi
NVIDIA 提供了多种预构建的 CUDA 镜像:
- nvidia/cuda:11.0-base
(最小基础镜像)
- nvidia/cuda:11.0-runtime
(包含运行时)
- nvidia/cuda:11.0-devel
(包含开发工具)
docker run --gpus all nvidia/cuda:11.0-base nvidia-smi
docker run --gpus all nvidia/cuda:11.0-base nvcc --version
通过以上步骤,您可以在 Docker 容器中成功使用 CUDA 进行 GPU 加速计算。