直接回答:容器里要用 GPU,宿主机只要装好显卡驱动,再装 NVIDIA Container Toolkit 并执行 nvidia-ctk runtime configure 把 nvidia 运行时装进 Docker,之后加 --gpus all 启动容器即可。

以下经验来自ubuntu下新装系统,要求需要安装好显卡驱动,不需要安装cuda

1. 安装Docker,按照官方文档安装即可

2. 安装NVIDIA容器工具包(NVIDIA Container Toolkit)

  1. 配置生产环境
1
2
3
4
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

另外还可以配置仓库使用实验性包

1
sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
  1. 从仓库中更新包列表
1
sudo apt-get update
  1. 安装NVIDIA容器工具包
1
sudo apt-get install -y nvidia-container-toolkit

关于其他安装可以参考官方文档

3.配置Docker

  1. 配置容器运行时

    1
    sudo nvidia-ctk runtime configure --runtime=docker
  2. 重启Docker守护进程

1
sudo systemctl restart docker

4.运行容器

1
2
sudo docker run -e TZ=Asia/Shanghai --runtime=nvidia --gpus all --name use_gpu  ubuntu
sudo docker run --runtime=nvidia --gpus all -itd --network host -e TZ=Asia/Shanghai --name youruser_rag_gpu ubuntu

如果宿主机只装了驱动,那么可以使用CUDA镜像进行开发

这篇笔记整理自我自己的实践记录,如果做法有出入,或者你踩过别的坑,欢迎到留言板一起聊聊。

站内搜索

没有找到内容!