docker容器使用GPU方法實現

為瞭使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驗證。

到此這篇關於docker容器使用GPU方法實現的文章就介紹到這瞭,更多相關docker使用GPU內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: