banner
李大仁博客

李大仁博客

天地虽大,但有一念向善,心存良知,虽凡夫俗子,皆可为圣贤。

[docker]升級docker19.03使用nvidia-container-toolkit

升級 docker19.03 使用 nvidia-container-toolkit

docker 升級到 19.03 以後,nvidia 將提供原生的顯卡支援,只需要安裝 nvidia-container-toolkit 工具包即可, 不再像使用 nvidia-docker/2 那樣複雜配置,而且不支援用 docker-compose

安裝步驟 1. 確認本機 nvidia 驅動安裝正確,cuda 和 cudnn 配置正常,官方文件說可以不需要在 host 配置 cuda, 2. 安裝 docker,可以參考,主要安裝 19.03 以後的版本 https://docs.docker.com/engine/install/ubuntu/ 3. 添加 nvidia-docker 的源

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
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

4. 使用以下命令安裝 nvidia-container-toolkit,重啟 docker

sudo apt-get install -y nvidia-container-toolkit
#restart docker
sudo systemctl restart docker

5. 如果本機已安裝 nvidia-docker2,可以單獨完成安裝 nvidia-container-toolkit,且相互不影響, 官方雖然已經宣布 nvidia-docker2 deprecated 了,但是繼續使用是沒問題的

使用上的主要區別 使用 nvidia-container-toolkit

#使用 nvidia-container-toolkit
docker run --gpus "device=1,2"

使用 nvidia-docker2

#使用 nvidia-docker2, 已 deprecated,但是還能繼續用
docker run --runtime=nvidia

使用 nvidia-docker

#使用 nvidia-docker
nvidia-docker run

幾個坑 1. nvidia-container-toolkit 和 nvidia-docker2 的容器 image 位置不一樣且不通用,如果要混用,需要根據需要選擇不同版本的容器 2.nvidia-container-toolkit 的多顯卡支援目前測試沒成功,容器跑最好還是單個顯卡吧。可能跟 host 配置有關

參考 https://docs.nvidia.com/deeplearning/frameworks/user-guide/index.html https://docs.nvidia.com/ngc/ngc-aws-setup-guide/running-containers.html#preparing-to-run-containers https://github.com/NVIDIA/nvidia-docker https://nvidia.github.io/nvidia-docker/

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。