前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Docker配置MindSpore-GPU环境

Docker配置MindSpore-GPU环境

作者头像
zstar
发布于 2024-05-24 05:19:12
发布于 2024-05-24 05:19:12
24000
代码可运行
举报
文章被收录于专栏:往期博文往期博文
运行总次数:0
代码可运行

前言

项目指定MindSpore为推理框架,可惜该框架不支持在Windows系统中调用gpu,于是想通过Docker在Win10中调用MindSpore的Linux镜像,本文记录一下配置过程。

1.下载Docker-desktop

Docker的基础原理和安装可参考我之前的博文Docker学习笔记 Docker-desktop官网下载:https://www.docker.com/products/docker-desktop

2.拉取MindSpore镜像

MindSpore官网:https://www.mindspore.cn/install 在MindSpore官网拉取GPU版本的镜像,相关设置如下图所示:

运行安装命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docker pull swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-gpu-cuda11.1:2.2.14

3.启动容器

输入以下命令启动容器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docker run -it --gpus all --name mind -p 10023:23 swr.cn-south-1.myhuaweicloud.com/mindspore/mindspore-gpu-cuda11.1:2.2.14 /bin/bash
  • --gpus all表示该容器可以调用主机所有GPU
  • --name mind表示将该容器重命名为mind
  • -p 10023:23表示将主机端口10023映射到容器端口23,方面后续通过ssh来进行通信

4.Pycharm插件安装

为了后续方便在Pycharm中启动容器,以及和容器进行通信,在Pycharm中安装DockerSource Synchronizer两个插件。

安装完Docker插件后,在Pycharm的Services中,可以找到新建立的容器,并进行一键启动。

启动之后,点击Teminal进入终端,即可在容器内部进行相关操作。

5.配置SSH连接

为了方便后续主机和容器进行文件的传输,在容器中配置ssh服务。 在容器中输入以下命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
apt update
apt upgrade
apt install -y openssh-server

之后,为容器设置密码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
passwd

修改ssh配置文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vi /etc/ssh/sshd_config

主要对以下四行内容取消注释,并进行修改:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Port 23
PermitRootLogin yes
PubkeyAuthentication yes
MaxStartups 10:30:60

修改完之后输入:wq保存退出。

重启ssh服务:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
service ssh restart

最后,在主机端进行ssh连接测试:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ssh root@127.0.0.1 -p 10023

出现以下内容,表示顺利连接:

下面在Pycharm中,利用Source Synchronizer进行ssh配置,在右上角点开编辑文件:

输入下列信息:

设置完成之后,就可以直接在编辑器中,通过右键,一键将文件上传到/home路径中。

6.GPU环境验证

根据MindSpore官网的描述,可用以下代码进行环境验证:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import mindspore

mindspore.set_context(device_target='GPU')
mindspore.run_check()

将该文件上传到容器中进行运行,出现下列内容表示通过验证:

7.下载文件

该插件上传比较方便,如需下载文件,可以用ssh连接软件去连接docker,也可采用命令行的方式,比如,需要将容器中的mind:/home/mindyolo/model.ckpt文件下载到C:\Users\zxy\Desktop\cp路径下,可执行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docker cp mind:/home/mindyolo/check.py C:\Users\zxy\Desktop\cp

8. wsl环境迁移

配置完环境后,发现C盘少了50多个G,仔细检查发现docker会把镜像和容器文件存放在C:\Users\zxy\AppData\Local\Docker这个路径下,因此需要将其迁移到其它盘。

这里迁移千万不能直接手动复制文件夹,如果出错则会导致容器镜像丢失,下面用管理员命令打开控制台:

  1. 关闭wsl
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wsl --shutdown
  1. 导出数据 对应存放路径修改为自己的,我这里临时建了一个temp文件用来存数据:
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wsl --export docker-desktop D:\Docker\temp\docker-desktop.tar
wsl --export docker-desktop-data D:\Docker\temp\docker-desktop-data.tar
  1. 注销
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wsl --unregister docker-desktop
wsl --unregister docker-desktop-data
  1. 导入数据
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wsl --import docker-desktop D:\Docker\wsl\docker-desktop D:\Docker\temp\docker-desktop.tar
wsl --import docker-desktop-data D:\Docker\wsl\docker-desktop-data D:\Docker\temp\docker-desktop-data.tar

完成之后,C盘存储压力消除,其它一切正常。

参考

1.Source Synchronizer:https://plugins.jetbrains.com/plugin/7374-source-synchronizer 2.Window端Autogluon环境(Pycharm+Docker)搭建教程:https://zhuanlan.zhihu.com/p/370999648?utm_id=0 3.wsl2 docker 数据迁移步骤:https://zhuanlan.zhihu.com/p/581145587

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-05-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
解决Docker占用C盘资源的问题
在Windows中安装Docker桌面版,会使用子系统WSL,而子系统默认是将资源放在C盘的,这样会导致C盘资源紧张,进而影响系统的使用。本文将转移Docker的资源到非系统盘,比如D盘。该方法适用所有WSL子系统。
Homqyy
2024/08/23
3250
解决Docker占用C盘资源的问题
【填坑】在windows系统下安装Docker Desktop后迁移镜像位置
大家好,本文是为了填前两天写的一篇文章《【图文教程】Windows11下安装Docker Desktop》。这篇文章有个坑,当时凯哥忘了写上。今天就把这个坑给填补上。什么坑呢?就是默认安装的镜像是在C盘下的。先来看看看迁移之前C盘情况:
凯哥Java
2022/12/16
8.1K0
【填坑】在windows系统下安装Docker Desktop后迁移镜像位置
win10 docker-desktop 修改镜像路径 wsl2
注意导入(docker-desktop 和 docker-desktop-data)文件夹不能一样,不然会报错
吟风者
2021/07/13
1.3K0
WSL2安装Ubantu与Docker-desktop部署
WSL2(windows subsystem for linux 2)是微软推出的Windows上的Linux子系统,部署WSL2你将可以在windows上使用Linux系统,其使用体验无限接近与直接安装一台Linux系统。这里我部署WSL2主要是为了想在windows上使用docker。这里实现的过程大致是:
Tommonkey
2023/03/20
2.8K0
WSL2安装Ubantu与Docker-desktop部署
将docker的wsl存储文件转移到其他地方
缺省情况下,Windows上的docker的文件存放在user的"AppData\Local\Docker"下。
东风压倒西风
2022/10/21
1.6K0
「  使用docker for windows关于迁移目录的教程  」
本次下载的docker for windows的版本为20.10.14,关于安装,安装时我选择了使用wsl替代hyper-v,所以这篇教程主要是记录wsl的迁移也符合标题!
青益
2023/01/03
1.9K0
「  使用docker for windows关于迁移目录的教程  」
win10使用WSL 2运行Docker Desktop,运行文件从C盘迁移到其他目录
前几天重装系统,把系统升到了 Windows 10 2004,然后在安装 Docker Desktop(2.3.0.3 版本)时发现跟以前不太一样了。现在 Docker Desktop 默认使用 WSL 2 来运行,而不是以前的 Hyper-V。
xhznl
2020/08/14
5.4K1
windows单机搭建k8s环境
进入BIOS→找到【Configuration】或者【Security】选项→选择【Virtualization】→将【Intel (R) Virtualization Technology】以及【Intel (R) VT-d Feature】设置为【Enable】
DifficultWork
2021/03/04
13.4K0
Synopsys全套docker镜像使用指南
本教程通过win10下的docker实现,过程简单,不需要自己进行破解,同时是通过wsl方式实现,比虚拟机效率会更加高一些。
空白的贝塔
2020/11/03
3.4K0
Synopsys全套docker镜像使用指南
如何优雅的变更Docker Desktop的镜像存储路径
Docker Desktop 默认将镜像文件存储在C盘,随着Docker的使用,镜像文件大小的不断增加,可能会导致C盘空间不足。为了解决这个问题,可以采取以下步骤更改Docker镜像的存储位置。
Tinywan
2024/04/30
15.1K0
如何优雅的变更Docker Desktop的镜像存储路径
在Windows(WSL)中如何迁移Docker
在Windows 10中Docker是默认安装到WSL中的,而安装到WSL中的任意分发版都是默认放在C盘中的。这样会让我们的C盘资源极度紧张,而且也限制了Docker的镜像数量。
Homqyy
2023/03/06
4.3K0
在Windows(WSL)中如何迁移Docker
windows 10更改WSL Docker镜像目录
现在Docker Desktop默认使用WSL 2来运行,而不是以前的Hyper-V。
张善友
2021/01/20
6.2K0
【图文教程】Windows11下安装Docker Desktop
我们都知道,说起Docker,第一反应就是在Linux系统安装。那么如果想在Windows系统安装,怎么玩呢?下面凯哥就图文讲讲怎么在Windows11系统下安装。
凯哥Java
2022/12/16
18.4K0
【图文教程】Windows11下安装Docker Desktop
老潘的笔记本环境配置
前一阵子买了个新的笔记本电脑,幻13-3050TI-1T版本,全能本,CPU是8核心16线程的标压版AMD锐龙9-5900HS,显卡是NVIDIA-3050TI,重量和macbook差不多,都是1.4kg,便携、可以改变形态。
老潘
2023/10/19
5720
老潘的笔记本环境配置
Docker desktop使用
在完成docker desktop安装,正常启动后,Windows版本(Windows 10)WSL 2 版本 docker 默认程序安装到c盘,数据存放于C:\Users\当前用户名\AppData\Local\Docker\wsl\data\ext4.vhdx但我个人习惯把软件及数据都放到C盘外的盘符。为了实现这个操作,需要执行以下命令
是小北a
2023/10/21
6280
OpenHarmony南向开发-Docker编译环境
OpenHarmony为开发者提供了两种Docker环境,以帮助开发者快速完成复杂的开发环境准备工作。两种Docker环境及适用场景如下:
小帅聊鸿蒙
2024/07/30
2600
OpenHarmony南向开发-Docker编译环境
MindSpore模型验证
在前面一篇博客中,我们介绍了MindSpore在机器学习过程中保存和加载模型的方法。这种将模型存储为静态文件的做法,使得我们可以更灵活的使用训练出来的模型,比如用于各种数据集的验证,或者是迁移学习等场景。
DechinPhy
2021/05/21
1.2K0
在Win10使用WSL2跑Docker,C盘空间不足焦虑症你有吗?
最近两天,Hyper-v的docker虚拟机总出问题,这里不得不吐槽一下,Hyper-v没有像vbox那样强制关机的选项,就导致不正常的虚拟机,关不掉,也用不了,也导致docker用不了,一气之下,开启了wsl2模式,目前感觉良好。
麒思妙想
2020/12/08
4.6K1
在Win10使用WSL2跑Docker,C盘空间不足焦虑症你有吗?
基于Docker的MindSpore安装与使用基础介绍
MindSpore是一款新一代AI开源计算框架,其特色在于:创新编程范式,AI科学家和工程师更易使用,便于开放式创新;该计算框架可满足终端、边缘计算、云全场景需求,能更好保护数据隐私;可开源,形成广阔应用生态。MindSpore的软件架构如下图所示:
DechinPhy
2021/05/21
1.6K0
OpenHarmony南向统一编译的docker镜像来了
由于我自己的南向设备开发平台的需求,我将当前几个不同的 docker 镜像版本进行了整合,经过一段时间的攻关和验证,目前整合已完成,新版本的 Dockerfile 如下,这个不是公共需求,所以没有提交主干,存这里备个案,需要的伙伴自行使用。使用方法如下:
小帅聊鸿蒙
2024/07/29
2200
OpenHarmony南向统一编译的docker镜像来了
相关推荐
解决Docker占用C盘资源的问题
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验