目錄
- 1、無nvidia-docker
- 2、nvidia-docker1.0
- 3、nvidia-docker2.0
- 4、安裝docker-19.03及以上版本
為了使docker容器可以使用nvidia-docker,可以有如下幾種辦法:
1、無nvidia-docker
在早期的時候,沒有nvidia-docker,可以通過在容器內再部署一遍nvidia GPU驅動解決。同理,其他設備如果想在容器里使用,也可以采用在容器里重新安裝一遍驅動解決。
2、nvidia-docker1.0
nvidia-docker是英偉達公司專門用來為docker容器使用nvidia GPU而設計的,設計方案就是把宿主機的GPU驅動文件映射到容器內部使用,可以通過tensorflow生成GPU驅動文件夾。
3、nvidia-docker2.0
nvidia-docker2.0對nvidia-docker1.0進行了很大的優化,不用再映射宿主機GPU驅動了,直接把宿主機的GPU運行時映射到容器即可。啟動方式示例:
nvidia-docker run -d -e NVIDIA_VISIBLE_DEVICES=all --name nvidia_docker_test nvidia/cuda:10.0-base /bin/sh -c "while true; do echo hello world; sleep 1; done"
4、安裝docker-19.03及以上版本
docker19.03及以上版本,已經內置了nvidia-docker,無需再單獨部署nvidia-docker了。安裝方式如下:
安裝docker:
yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum-config-manager --enable docker-ce-nightly yum-config-manager --enable docker-ce-test yum install docker-ce docker-ce-cli containerd.io systemctl start docker
安裝nvidia-container-toolkit
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo sudo yum install -y nvidia-container-toolkit sudo systemctl restart docker
啟動容器:
docker run --gpus all nvidia/cuda:10.0-base /bin/sh -c "while true; do echo hello world; sleep 1; done"
進入容器并輸入nvidia-smi驗證。






