从头安装与使用一个docker GPU环境

GPU版docker的安装与使用

  • 欢迎使用GPU版docker安装使用说明
    • 使用官方教程安装docker
    • 新建一个GPU版docker环境
    • 调用docker环境执行本地python文件

欢迎使用GPU版docker安装使用说明

使用官方教程安装docker

导入源仓库的GPG key

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

将 Docker APT 软件源添加到你的系统

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

安装命令如下:

 curl -fsSL https://test.docker.com -o test-docker.shsudo sh test-docker.sh

验证安装过程,查看安装的docker 版本,如果返回docker 版本,证明安装成功

docker -v

新建一个GPU版docker环境

在 Docker 中寻找专为深度学习和 GPU 计算准备的基础镜像,通常您会使用 Docker Hub,这是 Docker 的官方镜像仓库,包含了大量的社区和官方维护的镜像。对于深度学习和 GPU 计算,有几个关键的镜像资源您可以利用:

官方深度学习框架镜像:比如 PyTorch 和 TensorFlow 的官方镜像通常已经配置了适合深度学习的环境。在 Docker Hub 上搜索 pytorch/pytorch 或 tensorflow/tensorflow。

要查找这些镜像,您可以在 Docker Hub 的搜索栏中输入关键字,比如 “CUDA”、“PyTorch” 或 “TensorFlow”。选择镜像时,请注意镜像的标签,这些标签表示了不同版本的 CUDA 或深度学习框架。

例如,为了找到适合 PyTorch 和 CUDA 的镜像,您可以在 Docker Hub 上搜索 pytorch/pytorch,然后选择一个标签,比如 1.7.1-cuda11.0-cudnn8-runtime,这个标签意味着这个镜像包含了 PyTorch 1.7.1,CUDA 11.0 和 cuDNN 8。

一旦找到合适的镜像,您可以使用 docker pull 命令来下载它,例如:

docker pull nvidia/cuda:11.1-base

docker pull pytorch/pytorch:1.7.1-cuda11.0-cudnn8-runtime

测试 GPU 访问,要测试 Docker 是否可以访问 GPU,您可以运行一个带有 CUDA 支持的测试镜像,例如:

docker run --gpus all nvidia/cuda:10.0-base nvidia-smi

docker: Error response from daemon: could not select device driver “” with capabilities: [[gpu]].
ERRO[0000] error waiting for container: context canceled
表明 Docker 无法识别或使用 GPU。这通常是因为您的系统缺少所需的 NVIDIA 容器运行时或相应的配置不正确。以下是解决这个问题的几个步骤:
1、安装 NVIDIA Docker 插件
如果您正在使用 Docker 19.03 或更早的版本,您需要安装 nvidia-docker2。对于 Docker 19.03 及以后的版本,虽然有了原生的 GPU 支持,但您仍然需要 NVIDIA 容器工具包。

2、添加 NVIDIA 容器库:

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

3、安装 NVIDIA Docker:

sudo apt-get update
sudo apt-get install -y nvidia-docker2

4、重启 Docker 服务:

sudo systemctl restart docker

5、 验证 NVIDIA Docker 安装
运行以下命令来验证 NVIDIA Docker 是否正确安装:

docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi

出现如下界面表明容器可成功调用本地GPU,之后就是配置容器需要的代码插件。
在这里插入图片描述

调用docker环境执行本地python文件

1、定位您的 Python 文件:

确定您要执行的 Python 文件的路径。例如,假设您的文件位于 /path/to/your/script.py。

2、选择或创建 Docker 镜像:

确保您有一个包含所需 Python 版本和依赖库的 Docker 镜像。假设您使用的是 liqiang12689/laconda:v1 镜像。

3、运行 Docker 容器并挂载文件:

使用 Docker 的 -v 参数将本地文件或目录挂载到容器中。以下命令将本地目录 /path/to/your 挂载到容器的 /app 目录,并以交互模式启动容器:

docker run -it -v /path/to/your:/app liqiang12689/laconda:v1 /bin/bash

这样,容器内的 /app 目录现在包含您的 Python 文件。

4、在容器内执行 Python 文件:

容器启动后,您将进入其命令行界面。切换到挂载的目录:

cd /app

5、然后,使用 Python 运行您的脚本:

python script.py  # 或 python3 script.py,取决于您的 Python 版本

这将执行您的本地 Python 脚本 script.py。

6、退出容器:

完成后,您可以通过输入 exit 或按 Ctrl+D 退出容器。

请记住,如果您的 Python 脚本有任何外部依赖或特定的环境需求,您需要确保这些依赖在 Docker 镜像中可用。您可能需要创建一个自定义 Docker 镜像,其中包含您的代码依赖项,或者在运行容器之前手动安装它们。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

虹科分享 | 用Redis为LangChain定制AI代理——OpenGPTs

文章速览: OpenGPTs简介Redis在OpenGPTs中的作用在本地使用OpenGPTs在云端使用OpenGPTsRedis与LangChain赋能创新 OpenAI最近推出了OpenAI GPTs——一个构建定制化AI代理的无代码“应用商店”,随后LangChain开发了类似的开源工具OpenGPTs。OpenGPTs是一…

05-微服务Sentinel流量哨兵

一、Sentinel介绍 1.1 什么是Sentinel 分布式系统的流量防卫兵:随着微服务的普及,服务调用的稳定性变得越来越重要。Sentinel以“流量”为切入点,在流量控制、断路、负载保护等多个领域开展工作,保障服务可靠性。特点&#xff1…

VSCode搭建 .netcore 开发环境

一、MacOS 笔者笔记本电脑上安装的是macOS High Sierra(10.13),想要尝试一下新版本的.netcore,之前系统是10.12时,.netcore 3.1刚出来时安装过3.1版本,很久没更新了,最近.net8出来了,想试一下,…

redis夯实之路-键过期与发布订阅详解

设置键的生存时间或过期时间 Setex(单位s),expire(s),pexpire(ms)可以设置键的生存时间, Expirate,pexpirate设置键的过期时间(timestamp的时间…

day08

回顾 1.选择排序原理: 找到最小值的下标,交换 2.冒泡排序原理: 比较相邻的两个元素,把最小值放到左边。第一次比较的时候最大值放到最右边了,以此类推今天的内容 1类和对象 2.类和对象内存 3.构造方法 1.从生活的角度区理解面向对象开发 有两…

Hologres + Flink 流式湖仓建设

Hologres Flink 流式湖仓建设 1 Flink Hologres2 实时维表 Lookup 1 Flink Hologres holo在实时数仓领域非常受欢迎,一般搭配flinkhologres来做实时数仓,中间分层用holo,上下游一般依赖于holo的binlog来下发数据 2 实时维表 Lookup Holo…

展厅设计原则都包含哪些

1、风格与品牌一致性 展厅设计应体现企业的品牌形象和价值观,从色彩、材料选择到整体布局,都应与企业的品牌风格保持一致。 2、空间规划和流线设计 展厅内不同区域需要有合理的空间规划和流线设计,使参观者能够便利地浏览展品和了解企业信息。…

基于YOLOv8深度学习的苹果叶片病害智能诊断系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

走迷宫(c语言)

前言: 制作一个迷宫游戏是一个有趣的编程挑战。首先,我们需要设计一个二维数组来表示迷宫的布局,其中每个元素代表迷宫中的一个格子。我们可以使用不同的值来表示空格、墙壁和起点/终点。接下来,我们需生成迷宫。在生成迷宫的过程…

联手英特尔,释放星飞分布式全闪存储潜能

近日,英特尔官网发布了与 XSKY 星辰天合联手打造的解决方案,即 XSKY 的新一代全闪分布式存储系统 XINFINI,该存储系统采用英特尔 QAT 加速数据压缩/解压缩,从而大幅度提升存储系统性能。 全闪存储系统面临的解压缩挑战 在存储系统…

鸿蒙开发笔记(三):页面和自定义组件生命周期

先明确自定义组件和页面的关系: 自定义组件:Component装饰的UI单元,可以组合多个系统组件实现UI的复用。 页面:即应用的UI页面。可以由一个或者多个自定义组件组成,Entry装饰的自定义组件为页面的入口组件&#xff0c…

Cypress安装与使用教程(4)—— 软测大玩家

😏作者简介:博主是一位测试管理者,同时也是一名对外企业兼职讲师。 📡主页地址:【Austin_zhai】 🙆目的与景愿:旨在于能帮助更多的测试行业人员提升软硬技能,分享行业相关最新信息。…

计算机组成原理期末复习

文章目录 第一章:计算机系统漫游编译系统进程线程之间的关系存储器层次结构虚拟地址 第二章:信息的表示和处理大端与小端整数运算浮点数运算 第三章:程序的机器级表示栈的压入和弹出算数与逻辑运算操作指令条件判断与循环 第六章:…

【金猿案例展】首创证券——NoETL敏捷分析解决方案

‍ Aloudata 本项目案例由 Aloudata 投递并参与“数据猿年度金猿策划活动——2023大数据产业年度创新服务企业榜单/奖项”评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 党的十八大以来,党中央、国务院不断加大金融科技创新支持力度,扩大金融科…

关于有源电力滤波器在地铁站低压配电系统中的应用分析——安科瑞赵嘉敏

摘要:作为国家提出的绿色电网、节能降耗已成为现代化企业努力的目标,也是企业急需解决的问题。作为地铁车站这类市政公共交通建筑的着重系统——配电系统。实现绿色电网实质上是解决电网中存在的各种电能问题,主要是涉及到谐波与无功问题两个…

统计学习 复习(知识点+习题)

复习资料:https://github.com/RuijieZhu94/StatisticalLearning_USTC 第一章 线性回归 1. From one to two 最小二乘 课后题 有偏/无偏估计 加权最小二乘 2. Regularization 线性回归(二维情况) 求解有约束优化问题 正则化最小加权二乘…

postman上传文件文件名有黄色图标

问题: 解决方案 步骤一:设置处打开settings 步骤二:打开location,选择文件所在磁盘目录 步骤三:关闭选项框 文件报错问题解决

数字孪生+人工智能突破复杂地形和气候提供可靠的电力

利用 Bentley 应用程序实现数字化交付,大大缩短了项目时间和成本,降低了碳排放量 Kalpataru Projects International Limited (KPIL) 正在扩展喀麦隆的电力网络,以改善该国 13% 人口的电网连接和电力供应。根据其项目管理方法,KPI…

MySQL 从零开始:02 MySQL 安装

文章目录 1、下载 MySQL 安装程序2、安装 MySQL 要操作 MySQL ,首先要安装 MySQL ,本文将一步步展示如何安装 MySQL,简直详细到令人发指。 环境: 操作系统:Windows10 64位MySQL版本:社区版 8.0.11.0 1、下…

什么是WhatsApp Business?WhatsApp和WhatsApp Business区别?

什么是WhatsApp Business? WhatsApp Business账号是Meta专为企业设计的WhatsApp账号。不同于消费者层次的应用,WhatsApp Business旨在为企业提供更好的服务支持,方便企业与消费者建立更好的双向沟通渠道。 WhatsApp和WhatsApp Business有什…