centos7.9 docker使用GPU 配置
安装Docker
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli
systemctl start docker
systemctl enable docker
docker --version
安装Docker-compose
sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
安装GPU驱动
wget https://repo.continuum.io/archive/Anaconda3-2019.07-Linux-x86_64.sh
sudo sh Anaconda3-2019.07-Linux-x86_64.sh
if lspci | grep -i nvidia &> /dev/null; then
echo "NVIDIA GPU found"
else
echo "No NVIDIA GPU found"
exit 1
fi
yum install -y kernel-devel
kernel_version=$(ls /boot | grep vmlinu)
source_version=$(rpm -qa | grep kernel-devel)
echo "Kernel Version: $kernel_version"
echo "Kernel Source Version: $source_version"
wget http://cn.download.nvidia.com/tesla/450.51.06/NVIDIA-Linux-x86_64-450.51.06.run
su root -c 'echo "blacklist nouveau" >> /lib/modprobe.d/dist-blacklist.conf'
su root -c 'echo "options nouveau modeset=0" >> /lib/modprobe.d/dist-blacklist.conf'
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut /boot/initramfs-$(uname -r).img $(uname -r)
systemctl set-default multi-user.target
reboot
lsmod | grep nouveau
chmod +x NVIDIA-Linux-x86_64-450.51.06.run
./NVIDIA-Linux-x86_64-450.51.06.run --kernel-source-path=/usr/src/kernels/3.10.0-1160.95.1.el7.x86_64/
nvidia-smi
Docker 配置GPU
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.repo | sudo tee /etc/yum.repos.d/nvidia-container-runtime.repo
yum install nvidia-container-runtime -y
echo '{
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
},
"default-runtime": "nvidia"
}' | sudo tee /etc/docker/daemon.json
systemctl restart docker
docker info
# 此项表明成功配置GPU
Runtimes: io.containerd.runc.v2 nvidia runc
docker-compose.yml 使用GPU
# docker-compose.yml 添加GPU相关环境信息
environment:
- NVIDIA_VISIBLE_DEVICES=all
- NVIDIA_DRIVER_CAPABILITIES=compute,utility