ubuntu 20.0.4 搭建nvidia 显卡环境

一、安装docker

1、安装dokcer

shell 复制代码
sudo apt install docker.io

2、docker 添加到用户组

  • 创建docker用户组
shell 复制代码
sudo groupadd docker
  • 添加当前用户加入docker用户组
shell 复制代码
sudo usermod -aG docker ${USER}
  • 重启docker服务
shell 复制代码
sudo systemctl restart docker
  • 切换或者退出当前账户再从新登入
shell 复制代码
docker ps

如果当前用户执行无报错, 则表示用户已经加到docker组

3、docker 配置阿里云镜像

shel 复制代码
vim /etc/docker/daemon.json

daemon.json

json 复制代码
{
	"registry-mirrors": ["https://zfzbet67.mirror.aliyuncs.com"]
}

4、docker 配置汉化工具

  • 拉取镜像:已经有大神准备好了汉化版的镜像,无需自己进行繁杂的汉化操作。
shell 复制代码
docker pull summary/portainer-ce
  • 已有镜像,加载本地镜像
shell 复制代码
dokcer load -i images.tar
  • 启动镜像
shell 复制代码
docker run -d -p 1066:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name=portainer-ce summary/portainer-ce

5、相关资料

二、NVIDIA CONTAINER TOOLKIT 安装

是一个用于在 NVIDIA GPU 上运行容器应用程序的工具包。它提供了一系列的组件和工具,用于管理和优化 GPU 加速的容器化工作负载。
NVIDIA Docker 运行时(nvidia-docker2):它是一个 Docker 运行时插件,允许容器与宿主机共享 NVIDIA GPU 资源。这使得开发人员可以在容器中轻松地访问和使用 GPU 加速功能,无需进行复杂的配置。

1、设置NVIDIA容器工具包

  • 安装curl
shell 复制代码
sudo apt-get install curl
  • 设置程序包存储库和GPG密钥:
shell 复制代码
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
      && 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/$distribution/libnvidia-container.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

2、安装nvidia-container-toolkit 程序包(和依赖项):

  • 更新程序列表
shell 复制代码
sudo apt-get update
  • 安装
shell 复制代码
sudo apt-get install -y nvidia-container-toolkit
  • 配置Docker守护程序以识别 NVIDIA Container Runtime:
shell 复制代码
sudo nvidia-ctk runtime configure --runtime=docker

daemon.json

json 复制代码
{
	"registry-mirrors": ["https://zfzbet67.mirror.aliyuncs.com"],
	"runtimes": {
		"nvidia": {
			"path": "/usr/bin/nvidia-container-runtime",
			"runtimeArgs": []
		}
	}
}
  • 重启docker
shell 复制代码
sudo systemctl restart docker
  • 测试
shell 复制代码
sudo docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi

输出一下信息,安装成功。

shell 复制代码
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.51.06    Driver Version: 450.51.06    CUDA Version: 11.0     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  Tesla T4            On   | 00000000:00:1E.0 Off |                    0 |
| N/A   34C    P8     9W /  70W |      0MiB / 15109MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

三、安装cuda

  • 执行命令,根据提示按回车即可
shell 复制代码
sudo chmosd -X cuda_11.2.0_460.27.04_linux.run
suod bash cuda_11.2.0_460.27.04_linux.run
  • 添加到环境变量
shell 复制代码
sudo vim ~/.baschrc

# 	结尾添加
export PATH=/usr/bin:/usr/sbin:/usr/local/cuda-11.2/bin
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64
  • 验证
shell 复制代码
nvcc -V 

# 输出以下信息安装成功
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2020 NVIDIA Corporation
Built on Mon_Nov_30_19:08:53_PST_2020
Cuda compilation tools, release 11.2, V11.2.67
Build cuda_11.2.r11.2/compiler.29373293_0

四、cudnn 安装

  • 解压cudnn-linux-x86_64-8.6.0.163_cuda11-archive.tar.xz
shell 复制代码
tar -xvf cudnn-linux-x86_64-8.6.0.163_cuda11-archive.tar.xz

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZG12LLfN-1691460393859)(H:\\360MoveData\\Users\\Administrator\\Desktop\\显卡环境安装包\\ubuntu显卡环境安装.assets\\image-20230808094350495.png)

  • includelib分别复制到cuda 安装目录 下的 includelib
shell 复制代码
sudo cp -r include/* /usr/local/cuda-11.2/include
sudo cp -r lib/* /usr/local/cuda-11.2/lib64

五、TensorRT 安装

  • 解压压缩包,复制到opt目录即可
shell 复制代码
tar -xvf tensorrt-8.2.5.1.linux.x86_64-gnu.cuda-11.4.cudnn8.2.tar.gz
sudo mv TensorRT-8.2.5.1/ /opt
  • 添加到环境变量,可选
shell 复制代码
sudo vim ~/.baschrc

# 	结尾添加
export PATH=/usr/bin:/usr/sbin:/usr/local/cuda-11.2/bin:/opt/TensorRT-8.2.5.1/bin
export LD_LIBRARY_PATH=/usr/local/cuda-11.2/lib64:/opt/TensorRT-8.2.5.1/lib

# 更新资源
source ~/.baschrc
相关推荐
卷卷说风控4 分钟前
Claude Code 技术架构深扒:Prompt / Context / Harness 三维设计实践
人工智能·架构·prompt
程序猿编码4 分钟前
一个授予普通进程ROOT权限的Linux内核级后门:原理与实现深度解析
linux·运维·服务器·内核·root权限
小夏子_riotous8 分钟前
openstack的使用——9. 密钥管理服务Barbican
linux·运维·服务器·系统架构·centos·云计算·openstack
Frank学习路上9 分钟前
【AI技能】跟着费曼学自动驾驶
人工智能·机器学习·自动驾驶
Want59530 分钟前
Rokid AI Glasses应用开发实战:把记账助手“戴”在脸上
人工智能
梦想的旅途21 小时前
自动化运营如何防封?解析 API 协议下的拟人化风控算法
运维·自动化
bryant_meng1 小时前
【Reading Notes】(4)Favorite Articles from 2021
人工智能·深度学习·业界资讯
雷工笔记1 小时前
MES / WMS / AGV 交互时序图及生产管理模块界面设计清单
人工智能·笔记
海兰1 小时前
使用 Spring AI 打造企业级 RAG 知识库第二部分:AI 实战
java·人工智能·spring
清空mega1 小时前
动手学深度学习——多尺度锚框
人工智能·深度学习·目标跟踪