docker支持cuda
如何在 docker 容器中使用 cuda
首先需要在宿主机安装 nvidia-docker2
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-docker2
sudo systemctl restart docker
需要在 docker 配置文件 / etc/docker/daemon.json 中增加以下内容
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
注意在启动容器的时候要加上 --gpus 选项,否则检测不到 gpu
docker run --gpus all -it IMAGE
How to get Docker to recognize NVIDIA drivers?
安装好以后应该可以在容器中使用
nvidia-smi
看到宿主机的 cuda 和 driver 版本。
此时就可以正常运行安装了 cuda 应用的容器了,例如 gpu 版到 torch 和 tf。