docker 获取Nvidia 镜像 | cuda |cudnn

news2025/5/24 15:31:16

本文分享如何使用docker获取Nvidia 镜像,包括cuda10、cuda11等不同版本,cudnn7、cudnn8等,快速搭建深度学习环境。

1、来到docker hub官网,查看有那些Nvidia 镜像

https://hub.docker.com/r/nvidia/cuda/tags?page=2&name=11.3
 

这里可以输入cuda的版本比如11.6,或筛选出相关的镜像:

https://hub.docker.com/r/nvidia/cuda/tags?page=1&name=11.6

旁边还有镜像名称的排序方式:

2、拉取镜像到本地

选择好想要的镜像,比如:11.3.1-cudnn8-devel-ubuntu20.04

点击右边的复制按键

复制到命令:

docker pull nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04

然后到命令终端执行:

这时就开始把nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04镜像,拉到本地啦,需要等待一会。

3、查看镜像,打开镜像

拉取镜像完成后,用docker images命令查看镜像的情况:

docker images

能看到nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04镜像在本地了,镜像大小是8.95G。

打开镜像(常规模式--支持使用GPU)

docker run -i -t --gpus all nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04  /bin/bash

打开镜像(增强模式--支持使用GPU、映射目录、设置内存)

docker run -i -t -v /home/liguopu/:/guopu:rw --gpus all --shm-size 16G nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04  /bin/bash

平常进入了docker环境,然后创建或产生的文件,在退出docker环境后会“自动销毁”;或者想运行本地主机的某个程序,发现在docker环境中找不到。

我们可以通过映射目录的方式,把本地主机的某个目录,映射到docker环境中,这样产生的文件会保留在本地主机中。

通过-v 把本地主机目录 /home/liguopu/ 映射到docker环境中的/guopu 目录;其权限是rw,即能读能写。

默认分配很小的内参,在训练模型时不够用,可以通过参数设置:比如,我电脑有32G内参,想放16G到docker中使用,设置为 --shm-size 16G。

4、测试镜像cuda和cudnn

用nvidia-smi看看显卡信息

这里看到的CUDA Version: 11.4,是和主机一致的,但我们想要的是11.3,没关系继续往下看。

用nvcc -V 命令查看,才是实际的cuda版本,后面搭建深度学习环境,也是依赖这里的cuda 11.3。

用ls /usr/local/命令看看cuda安装路径

下面就开始搭建深度学习环境啦

5、安装conda环境

默认的系统镜像可能没有conda也没有python,我们可以安装Anaconda,来搭建深度学习环境

 这里有两个下载地址可以选择,分别是官方下载地址、清华大学开源软件镜像站。

官方下载地址:Free Download | Anaconda

 如果觉得官方地址下载慢,可以尝试下清华大学的下载地址:

清华大学开源软件镜像站:Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

 

比如选择:Anaconda3-2023.07-2-Linux-x86_64.sh 

安装Anaconda3

进入下载文件的位置,打开终端terminal在文件目录下,使用bash 执行安装就可以啦:

bash Anaconda3-2023.07-2-Linux-x86_64.sh

安装过程:

1)输入回车键确认安装;

2)阅读Anaconda最终用户许可协议,按下回车浏览完信息;

3)问我们是否接受该协议,只能接受了,输入yes;(Do you accept the license terms? [yes|no])

4)提示安装到以下位置,回车确认即可;(Anaconda3 will now be installed into this location:)

5)是否加入环境变量,通常是选择yes的;这个根据自己情况选择,如果经常用conda环境开发,建议选择yes(Do you wish the installer to initialize Anaconda3 in your /home/linuxidc/.bashrc ? [yes|no])

开始安装页面

安装过程:

完成conda安装:

用另一个终端打开这个镜像创建的容器:

能看到能conda的初始环境了,说明conda安装成功啦。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1010671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

高德地图实现-逆地理编码-输入提示-地图标点-实现车库管理

效果图: 我们将学习如何创建一个前端地图应用程序,该应用程序集成了高德地图API,允许用户进行地点搜索、选择和标记,以及执行逆地理编码以获取地址信息。我们将使用Vue.js框架来构建应用程序,并结合高德地图的功能来实…

.NET Upgrade Assistant 升级 .NET MAUI

.NET Upgrade Assistant 是一种可帮助您将应用程序升级到最新的 .NET版本 的工具,并且您可以使用这个工具将您的应用程序从旧平台(例如 Xamarin Forms 和 UWP)迁移到新的平台。此外,这个新版本的工具,可以让您在不更改…

C++ - map 和 set 使用介绍

简介 其实在map 和 set 的底层实现当中有差不多一半的 结构是使用 二叉搜索树来实现,关于二叉搜索树可以看下面这个篇博客:C - 搜索二叉树_chihiro1122的博客-CSDN博客 而 set 是 key 模型,他是直接按照 key 值大小来有规律的在 二叉搜索树当…

pyG教程

introduction中ShapeNet失效问题解决 首先用github中官方最新的shapenet.py中文提示手动下载数据压缩包 # In case shapenet.cs.stanford.edu is offline, try to download the data# from Kaggle instead (requires login):# https://www.kaggle.com/datasets/mitkir/shapene…

提升网速 网卡和驱动

去某宝下单了,是网卡和驱动的问题(某宝说网卡和驱动是一个意思)。以下是操作步骤。 更新驱动程序后从联想官网下载本台电脑对应的驱动 下载可以识别自己主机编号的软件-主机信息识别工具 然后获取编号 然后下载自己的有线网卡

探索装饰艺术的未来,留存传统的精髓

近一个世纪后,装饰艺术终于卷土重来。正如我们在全球新的项目、室内空间和家具中所看到的,那种令我们渴望20世纪初20年代繁荣时期的奢华和魅力。作为装饰艺术建筑和设计的独特身份一直在世界上继续启发着人们,那么从新的设计和现有设计的保留…

5.linux的定时任务调度crontab

一、定时任务调度crontab 1. 定时任务调度crond介绍 ①任务调度:系统在某个时间执行特定的命令和程序 ②任务调度分类:系统工作(病毒扫描),用户工作(备份mysql数据库) 2.定时任务调度crond原…

C++项目实战——基于多设计模式下的同步异步日志系统-⑤-实用工具类设计

文章目录 专栏导读获取系统时间time介绍 getTime函数设计判断文件是否存在stat介绍exists函数设计 获取文件所在路径find_last_of介绍path函数设计 创建文件所在目录mkdir介绍find_first_of介绍函数createDirectory设计 实用工具类整理 专栏导读 🌸作者简介&#xf…

数据的真正价值是数据要素市场化开发

随着人工智能、互联网、物联网、大数据、云计算、区块链等新一代信息化、数字化技术的应用,各行各业都开始了新一轮的产业革命和转型升级。在这个过程中,数据伴随着信息化、数字化的推进越发变得重要,到了2020年直接成为了继土地、劳动力、资…

人工智能AI 全栈体系(三)

第一章 神经网络是如何实现的 一个神经网络用不同的数据做训练,就可以识别不同的东西,那么神经网络究竟是怎么训练的? 三、神经网络是如何训练的? 1. 小朋友如何认识小动物? 小时候,每当看到一个小动物时…

R3LIVE源码解析(10) — R3LIVE中r3live_vio.cpp文件

目录 1 r3live_vio.cpp简介 2 r3live_vio.cpp源码解析 1 r3live_vio.cpp简介 R3LIVE主要的公式推导在VIO上,所以我们来细细的分析这部分的功能。R3LIVE将VIO分成了两步,一是直接通过帧间的光流来追踪地图点,并且通过最小化追踪到的地图点的…

Springboot部署服务器项目上线

第一步,项目打包,有两种方式 第一种、直接在项目根目录打开终端,输入以下语句即可。如下图: mvn clean package -DskipTests 第二种、在右侧点击 Maven选项,选择鼠标左键双击package选项即可。如下图: 两…

《研发效能(DevOps)工程师国家职业技术认证》工信部教考中心认证证书:塑造研发效能的黄金标准丨IDCF

随着科技的飞速发展和市场竞争的日益激烈,高素质的技术管理人才在当今社会中扮演着越来越重要的角色。特别是在信息技术领域,企业对于拥有专业技能和丰富知识的研发效能管理与技术人才的需求愈发旺盛。工业和信息化部教育与考试中心(以下简称…

ueditor百度富文本编辑器粘贴后html丢失class和style样式

问题 项目经理从123在线编辑上排版好的文章,粘贴到项目的编辑器上,样式完全乱了, 排版是这样的: 复制到ueditor后的格式: 这天差地别呀,于是打开代码模式,发现section的属性全没了 但是,sp…

如何规划好自己的工作与学习时间?助你提高办事效率的待办提醒软件

在竞争激烈的职场中,想要脱颖而出、不断提升自我价值,我们必须不断学习。然而,很多上班族都发现工作忙碌,根本没有时间专注于学习。那么,如何规划好工作与学习时间呢?每个人的时间都是有限的,因…

Transformer最直观的解析(译)

在这篇文章中,我们将看看“Transformer”——一个利用注意力机制来提高模型训练速度的模型。Transformer在特定任务中优于谷歌神经机器翻译模型。然而,最大的好处来自于Transformer如何使自己适合并行化。事实上,Google Cloud推荐使用The Tra…

STM32F4的USB Host驱动移植详细步骤及问题解决

文章目录 1、库文件准备2、工程准备3、移植3.1、新建USB相关文件夹3.2、加USB相关代码3.3、添加头文件路径 4、修改相关代码1、修改usbh_usr.c①,usb_conf.h,include部分,②,定义全局宏③,修改usbh_usr.c 2、修改diski…

iis建立站点外网无法访问(防火墙的入站规则和出站)

iis建立站点 外网无法访问 原因: 被防火墙拦截了 处理方式: 打开window防火墙--高级设置--入站 出站就是你访问外网,入站就是外网访问你,用户可以创建入站和出站规则,从而阻挡或者允许特定程序或者端口进行连接; 可以使…

每日一博 - 图解进程(Process)和线程(Thread)区别联系

文章目录 概述图解小结 概述 进程(Process)和线程(Thread)是操作系统中管理和执行任务的两个基本概念,它们之间有以下主要区别: 独立性: 进程是独立的执行单位。每个进程有自己的独立地址空间、…

Nginx神奇的499竟然不在HTTP响应码标准内?快来了解一下!

1 前言 高性能的HTTP和反向代理服务器,Nginx用来: 搭建Web Server作负载均衡供配置的日志字段丰富,从各类HTTP头部到内部性能数据都有 Nginx的访问日志中,存在499状态码的日志。但常见4xx状态码只有400、401、403、404等&#…