deepstream docker安裝

介紹

deepstream為dGPU和Jetson平臺提供dockers containers,這些鏡像可以方便開發者很快地部署deepstream應用。deepstream的docker images可以在NGC web中得到。

安裝Docker

Docker 是一個開源的容器化平臺,它允許你構建,測試,并且作為可移動的容器去部署應用,這些容器可以在任何地方運行。一個容器表示一個應用的運行環境,并且包含軟件運行所需要的所有依賴軟件。

  1. 卸載舊版本的docker engine
sudo apt-get remove docker docker-engine docker.io containerd runc
  1. 安裝docker engine

docker engine的安裝方式有很多種,本文以Docker軟件源的方式進行演示安裝過程。

  1. 設置Docker repository
    1. 更新apt package index,同時安裝packages來允許apt使用一個repository;
sudo apt-get update
sudo apt-get install \ca-certificates \curl \gnupg \lsb-release
  2. 添加dockers的官方GPG key;
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
  3. 使用以下的命令設置repository;
echo \"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

現在,docker的軟件源被啟用,可以安裝軟件源中任何可用的docker版本。

  1. 安裝最新的docker engine
    1. 更新apt package index;
sudo apt-get update
  2. 安裝docker engine, containerd和docker compose;
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  3. 測試docker engine 是否正確安裝;
sudo docker run hello-world

上面的命令,將下載一個test鏡像并在一個容器中運行它。當容器運行時,它將答應確認信息并退出。

安裝nvidia-container-toolkit

確認您的系統上已經安裝了 nvidia 驅動程序。如果沒有安裝,請按照 nvidia 官方文檔中的說明進行安裝。

  1. 設置package repository和GPG key;
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
  1. 安裝nvidia-container-toolkit包
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
  1. 配置docker daemon來識別NVIDIA Container Runtime;
sudo nvidia-ctk runtime configure --runtime=docker
  1. 重啟Docker daemon;
sudo systemctl restart docker
  1. 測試nvidia-container-toolkit 是否正常工作
sudo docker run --rm --gpus all nvidia/cuda:11.0.3-base nvidia-smi

該命令將在容器中運行 NVIDIA 的 nvidia-smi 命令,并顯示 NVIDIA 顯卡的信息。如果 nvidia-container-toolkit 正常工作,則應該可以看到 NVIDIA 顯卡的信息。如下圖所示:
image.png

安裝Deepstream Docker

  1. 打開NGC官網,https://catalog.ngc.nvidia.com/;
  2. 在Container選項中,搜索Deepstream;

image.png

  1. 登錄NGC賬號;
  2. 使用如下的命令登錄NGC docker registry;
a. Username: "$oauthtoken"
b. Password: "YOUR_NGC_API_KEY"
  1. 拉取鏡像文件并運行
# Pull the required docker.  Refer Docker Containers table to get docker container name.
$ docker pull <required docker container name> # nvcr.io/nvidia/deepstream:6.1.1-devel
# Step to run the docker
$ export DISPLAY=:0
$ xhost +
$ docker run -it --rm --net=host --gpus all -e DISPLAY=$DISPLAY --device /dev/snd -v /tmp/.X11-unix/:/tmp/.X11-unix <required docker container name>

創建容器

sudo docker run \--gpus all \-v /home/sf/ds_share:/workspace \-p 8866:22 \--name  easyai \--restart=always \-itd b8179aaa2d73 \/bin/bash

啟動容器

sudo docker exec -it ${docker_container_id} /bin/bash

參考鏈接

  • https://docs.nvidia.com/metropolis/deepstream/dev-guide/text/DS_docker_containers.html
  • https://docs.docker.com/engine/install/ubuntu/
  • https://blog.csdn.net/u011119817/article/details/110386179

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

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

相關文章

29. 如何在Spring所有BeanDefinition注冊完后做擴展?

如何在Spring所有BeanDefinition注冊完后做擴展? 通常可以使用beanFactoryPostProcessor 對已注冊的BeanDefinition進行修改或者通過它的子接口BeanDefinitionRegistryPostProcessor 再進行注冊額外擴展 BeanDefinitionRegistryPostProcessor 1、概述 public interface Bea…

0基礎學java-day18-( 坦克大戰【2】)

課件資源放在文末 1.線程-應用到坦克大戰 1.1 坦克大戰 0.3 【坦克類&#xff1a;包括坦克的基本屬性&#xff0c;以及坦克的移動方法】 package com.hspedu.tankgame03;/*** author 韓順平* version 1.0*/ public class Tank {private int x;//坦克的橫坐標private int y;…

XMemcached network layout exception java.nio.channels.ClosedChannelException

java.nio.channels.ClosedChannelException 表示嘗試在已關閉的通道上進行 I/O 操作&#xff0c;通常發生在網絡連接意外關閉后嘗試在關閉的通道上執行讀取或寫入操作。 XMemcached network layout exception 可能是由于 XMemcached 客戶端在嘗試與 Memcached 服務器通信時發生…

一些AG10K FPGA 調試的建議-Douglas

PLL AGM FPGA 在配置成功時&#xff0c;PLL 已經完成鎖定&#xff0c;lock 信號已經變高&#xff1b;如果原設計中用 lock 信號輸出實現系統 reset 的復位功能&#xff0c;就不能正確完成上電復位&#xff1b;同時&#xff0c;為了保證 PLL 相移的穩定&#xff0c;我們需要在 P…

C++筆記之重載和重寫辨別

C筆記之重載和重寫辨別 code review! 文章目錄 C筆記之重載和重寫辨別重載&#xff08;overloading&#xff09;重寫&#xff08;Overriding&#xff09; 在C中&#xff0c;重載&#xff08;overloading&#xff09;和重寫&#xff08;overriding&#xff09;是面向對象編程中…

筆記69:Conv1d 和 Conv2d 之間的區別

筆記地址&#xff1a;D:\work_file\&#xff08;4&#xff09;DeepLearning_Learning\03_個人筆記\4. Transformer 網絡變體 a a a a a a a a a a a

設計模式-門面模式(Facade)

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言一、定義二、結構 前言 在組件構建過程中&#xff0c;某些接口之間直接依賴會帶來很多問題&#xff0c;甚至無法直接實現。采用一層間接接口&#xff0c;來隔離…

SpringBoot報No qualifying bean of type ‘com.lzk.mapper.UserMapper‘ available

這個異常是SpringBoot程序沒有找到要Bean&#xff0c;這里提示找不到UserMapper&#xff0c;有以下三種解決方式&#xff1a; 在UserMapper上添加注解MapperMapper public interface UserMapper extends BaseMapper<User> { }在啟動類上進行Mapper包掃描&#xff0c;不用…

【IC前端虛擬項目】工程目錄組織說明

【IC前端虛擬項目】數據搬運指令處理模塊前端實現虛擬項目說明-CSDN博客 文檔目錄在“MVU芯片前端設計驗證虛擬項目”中&#xff0c;截至本篇文章時&#xff0c;包含了MVU_FS.md/project_req.md和mvu_vp_list.xlsx三個文件。 MVU_FS是模塊的方案文檔&#xff0c;除了feature和…

淺談CompletableFuture

作者簡介&#xff1a;大家好&#xff0c;我是smart哥&#xff0c;前中興通訊、美團架構師&#xff0c;現某互聯網公司CTO 聯系qq&#xff1a;184480602&#xff0c;加我進群&#xff0c;大家一起學習&#xff0c;一起進步&#xff0c;一起對抗互聯網寒冬 回顧FutureTask 之前我…

安全高效 江西變電站成功應用國家電網無人機巡檢

隨著電力需求的迅速增長&#xff0c;電網的巡檢、維護與保養變得越來越重要。為迎接這一挑戰&#xff0c;江西供電公司的一座變電站成功引入了復亞智能國家電網無人機巡檢系統&#xff0c;在提升巡檢水平、開創新型巡檢模式方面做出了重要嘗試&#xff0c;為電網設備的高效巡檢…

EDA 數字時鐘

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言一、數字時鐘是什么&#xff1f;二、EDA里面數碼管的顯示1.元件模型2.參考程序3. 實驗仿真波形4.實驗現象5. 仿真問題 三、顯示時鐘1. 時鐘電路模塊2.參考程序3…

gRPC .net學習

學習helloworld server用.net client有.net的控制臺 和 unity server端 直接使用vs2022創建(需自行看有無裝asp.net哦),搜索gPRC,使用6.0吧&#xff0c;創建工程后直接F5跑起來,服務端到此完成 .net控制臺client,創建新的控制臺,使用NuGet,然后導入server端的Protos文件夾 學…

基于Jedis來探討池化技術

為什么需要池化技術 系統運行時必然是需要數據庫連接、線程等一些重量級對象&#xff0c;頻繁的創建這種對象對性能有著不小的開銷&#xff0c;所以為了減少沒必要的創建和開銷&#xff0c;我們就用到了池化技術。 通過創建一個資源池來保存這些資源便于后續的復用&#xff0c…

【C++初階】七、內存管理(C/C++內存分布、C++內存管理方式、operator new / delete 函數、定位new表達式)

相關代碼gitee自取&#xff1a; C語言學習日記: 加油努力 (gitee.com) 接上期&#xff1a; 【C初階】六、類和對象&#xff08;初始化列表、static成員、友元、內部類&#xff09;-CSDN博客 目錄 一 . C/C內存分布 C/C中程序內存區域劃分&#xff1a; 二 . C內存管理方式 …

16.Java程序設計-基于SSM框架的android餐廳在線點單系統App設計與實現

摘要&#xff1a; 本研究旨在設計并實現一款基于SSM框架的Android餐廳在線點單系統&#xff0c;致力于提升餐廳點餐流程的效率和用戶體驗。通過整合Android移動應用和SSM框架的優勢&#xff0c;該系統涵蓋了用戶管理、菜單瀏覽與點單、訂單管理、支付與結算等多個功能模塊&…

用戶登錄權限

文章目錄 [TOC](文章目錄) 前言一、 Cookie與session1.HTTP無狀態2.cookie 和 session 的生命周期2.1 cookie 生命周期影響因素2.2 session 生命周期影響因素 3.cookie 和 session 的區別4.工作原理3 用戶登錄Node.js和Express驗證session 二、JSON Web Token1. JWT 介紹2. JWT…

C#使用Matrix類對Dicom圖像的放縮

C#使用Matrix類對Dicom圖像的放縮&#xff0c;使用Matrix 1.同時操作水平、垂直同時放縮 // 創建一個 Matrix 對象 Matrix m_Matrix new Matrix();//放縮參數 float inputZoom1.2f; m_Matrix.Scale(inputZoom, inputZoom, MatrixOrder.Append); 2.操作水平&#xff08;X軸…

前端使用插件預覽pdf、docx、xlsx、pptx格式文件

PDF預覽 H5頁面pdf預覽 插件&#xff1a;pdfh5 版本&#xff1a;“pdfh5”: “^1.4.7” npm install pdfh5 import PdfH5 from "pdfh5"; import "pdfh5/css/pdfh5.css";// methods this.$nextTick(() > {this.pdfH5 new PdfH5("#pdf", {pd…

【算法系列篇】遞歸、搜索和回溯(二)

文章目錄 前言1. 兩兩交換鏈表中的節點1.1 題目要求1.2 做題思路1.3 代碼實現 2. Pow(X,N)2.1 題目要求2.2 做題思路2.3 代碼實現 3. 計算布爾二叉樹的值3.1 題目要求3.2 做題思路3.3 代碼實現 4. 求根節點到葉結點數字之和4.1 題目要求4.2 做題思路4.3 代碼實現 前言 前面為大…