2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu)

这篇具有很好参考价值的文章主要介绍了2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

导语

2023-4-11

对于机器学习er配置环境一直是个头疼的事,尤其是在windows系统中。尤其像博主这样的懒人,又不喜欢创建虚拟环境,过段时间又忘了环境和包的人,经常会让自己电脑里装了各种深度学习环境和python包。长时间会导致自己的项目文件和环境弄的很乱。且各个项目间的兼容性又会出现问题。

不仅如此,windows系统独特的“尿性”真的让开发者苦不堪言!

好在微软爸爸推出了WSL,WSL可以实现在windows电脑上运行linux系统。目前已经是越来越接近原生linux系统。

利用wsl 部署深度学习训练环境,无论是从便捷性上还是性能上均有优势。

博主浏览目前wsl配置深度学习环境的各种文章,采坑无数,终于完成了最详细的教程。

目前现在很多网上的教程都是老版本的**,真的有很多坑**!

由于现在很多环境和软件的升级,很多老教程不必要的操作就能直接省去!

这个教程就一个字:!相比以往的老教程,无需走很多弯路!下面开始吧!

需要在WSL上玩深度学习,需要以下几个条件

  • win11,最好更新到最新版本

  • 电脑上有显卡,Nvdia

  • windows上安装显卡驱动及CUDA和CuDNN(第一章)

  • 安装WSL2 (2版本更好)

  • WLS2安装好Ubuntu20.04(本人之前试过22.04,有些版本不兼容的问题,无法跑通,时间多的同学可以尝试)(第二章)

在做好准备工作后,本文将介绍两种方法在WSL部署深度学习环境

  • Docker法(光速部署,不需要在WSL内安装任何驱动,方便迁移)(第三章)
  • wls2本地法(在WSL2内直接安装CUDA)(第四章)

1、windows显卡环境及CUDA安装

  • 安装显卡驱动

    截止2023年,4月,全系显卡驱动已经指出

    GPU in Windows Subsystem for Linux (WSL) | NVIDIA Developer

    查看显卡驱动版本,及最大支持cuda版本,例如,如下图,本人最大支持12.1cuda

nvidia-smi

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

  • 安装合适的cuda版本和Cudnn

    CUDA Toolkit Archive | NVIDIA Developer

​ cuDNN Download | NVIDIA Developer

安装教程网上很多,推荐

CUDA与cuDNN安装教程(超详细)_kylinmin的博客-CSDN博客

2、WSL 安装Ubuntu

2.1 wsl安装

如果你的windows为11版本,那么安装wsl会非常方便,这里教程可以参考微软官方wsl。wsl有两个版本,wsl1和wsl2,具体安装过程见下。一般我们默认使用wsl2版本。

安装 WSL | Microsoft Learn

wsl的安装这里不介绍了,图太多。百度教程很多,这里就主要介绍下WSL安装Ubuntu。

以下步骤均在WSL2安装好的背景下镜像。

2.2 安装Ubuntu

查看发行版本,

wsl.exe --list --online

如果遇到以下错误

无法从“https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json”中提取列表分发。无法解析服务器的名称或地址

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

  • 修改dns服务器

网络和internet设置-高级网络设置---更多适配器选项,选择你连接的网络,右键属性,将ipv4 DNS设置为8.8.8.8

然后即可显示分装版本。

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

安装合适版本

建议选择20.04。22.04版本我试过,有不少坑点。

wsl --install -d Ubuntu-20.04

2.3 迁移至非系统盘

这一步主要是为了减少C盘的占用空间,默认WSL装 的linux子系统在C盘

docker-data默认安装在c盘,且设置中难以更改,因此采用如下操作。

  • 1、shutdown 子系统
wsl --shutdown
  • 2、导出Ubuntu
wsl --export Ubuntu-20.04 F:\Ubuntu\ubuntu.tar
  • 3、注销docker-desktop和docker-desktop-data
wsl --unregister Ubuntu-20.04
  • 4、导入
wsl --import Ubuntu-20.04 F:\Ubuntu\ F:\Ubuntu\ubuntu.tar --version 2
  • 5、删除压缩包
del D:\docker-desktop-data\docker-desktop-data.tar
del D:\docker-desktop-data\docker-desktop-data.tar

重新启动docker

2.4 更改镜像源

这一步主要是为了加速linux各种包的下载速度。

首先做一个备份,这里就把Ubuntu默认安装的镜像源备份,接着更改源

sudo cp  /etc/apt/sources.list /etc/apt/sources.list.bak
sudo vim /etc/apt/sources.list

##进入vim ggdG清空所有文本,复制清华源进vim编辑器中

打开如下源进行更新。注意Ubuntu版本选择20.04

ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

更新一下

sudo apt-get update
sudo apt-get upgrade

一般情况下:

在win11版本wsl和最新版(2023.4)的NVIDIA驱动场景下,在WSL2内,通过 nvidia-smi已经可以穿透显示显卡信息。2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

3、wls-Docker运行深度学习环境

适用Linux Docker配置深度学习环境。该方法使用Docker直接部署深度学习环境,方便快捷,并且不影响子系统本地。

Docker的部署方式分为两种,一种是使用desktop。即windows下载软件去部署docker;一种是使用linux版本的docker-engine。这就有点类似,一个使用图形化界面,一个使用小黑盒子。

这种desktop部署方式有优缺点:

优点:部署方便,可视化,适合小白

缺点:极大地占用宿主(windows)的空间!

  • 1、Docker Data文件为ext4.vhdx动态磁盘形式,该磁盘特点是,占用容量只会增大,即使删除其内部镜像文件,占用空间也不会减少。

  • 2、即使使用3.2节方法,虽然docker-data可以迁移至别的盘,但对镜像进行操作(如push),windows会产生临时文件夹,同样会占用C盘空间!

    留下贫穷的泪水!o(╥﹏╥)o

  • 3、性能问题,docker-desktop目前还有些bug未修复。

对于不喜欢折腾的选3.1即可

3.1与3.2方式二选一即可,但博主建议使用3.2节linux 原生docker-Engine进行配置!!!!

3.1与3.2方式二选一即可,但博主建议使用3.2节linux 原生docker-Engine进行配置!!!!

3.1与3.2方式二选一即可,但博主建议使用3.2节linux 原生docker-Engine进行配置!!!!

3.1 docker desktop 深度学习环境配置

3.1.1 docker desktop安装

Install Docker Desktop on Windows

  • 在windows上安装docker-Desktop

    别选4.17.1版本!!!!该版本无法调用gpus all

    目前4.18.0已结修复该bug

  • 设置

    1、镜像源

    将如下代码加入Docker Engine中

    2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

"registry-mirrors": [
      "https://registry.docker-cn.com",
      "http://hub-mirror.c.163.com",
      "https://docker.mirrors.ustc.edu.cn"
  ],

2- 系统设置

打开两个按钮

Settings---->General—>Use the WSL 2 based engine

Settings---->Resources—>Enable integration with additional distros

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

测试是否安装成功,在wsl Ubuntu系统下输入,

docker run hello-world

3.1.2 wsl 切换docker数据存储位置

docker-data默认安装在c盘,占用很大空间,且设置中难以更改,因此采用如下操作。

  • 1、shutdown docker
wsl --shutdown
  • 2、导出docker-desktop和docker-desktop-data
wsl --export docker-desktop-data F:\wsl2\docker-desktop-data.tar
wsl --export docker-desktop  F:\wsl2\docker-desktop.tar
  • 3、注销docker-desktop和docker-desktop-data
wsl --unregister docker-desktop-data
wsl --unregister docker-desktop
  • 4、导入
wsl --import docker-desktop-data F:\wsl2\docker-desktop-data F:\wsl2\docker-desktop-data.tar --version 
wsl --import docker-desktop F:\wsl2\docker-desktop F:\wsl2\docker-desktop.tar --version 2
  • 5、删除压缩包
del F:\wsl2\docker-desktop-data.tar
del F:\wsl2\docker-desktop-data.tar

重新启动docker

3.1.3 调用测试docker gpu

dock 官网给的条件已结满足,由于目前版本已结最新,可直接调用,无需安装其他内容。

Starting with Docker Desktop 3.1.0, Docker Desktop supports WSL 2 GPU Paravirtualization (GPU-PV) on NVIDIA GPUs. To enable WSL 2 GPU Paravirtualization, you need:

  • A machine with an NVIDIA GPU(有英伟达显卡)
  • The latest Windows Insider version from the Dev Preview ring(windows版本更细)
  • Beta drivers from NVIDIA supporting WSL 2 GPU Paravirtualization(最新显卡驱动即可)
  • Update WSL 2 Linux kernel to the latest version using wsl --update from an elevated command prompt(最新WSL版本)
  • Make sure the WSL 2 backend is enabled in Docker Desktop (Docker中设置WSL 2 backend勾选上)

运行如下代码测试

docker run --rm -it --gpus=all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark

如果得到,则说明安装成功。

Compute 7.5 CUDA device: [NVIDIA GeForce RTX 2070 SUPER]
40960 bodies, total time for 10 iterations: 56.638 ms
= 296.218 billion interactions per second
= 5924.356 single-precision GFLOP/s at 20 flops per interaction

3.2 wsl-linux原生docker-engine深度学习环境

docker engine装在wsl内部,相比于docker-desktop,能极大节省windows宿主空间!!!!

且运行效率更高

3.2.1 linux-docker-engine 安装

wsl原生docker安装方式和docker doc安装方法一致

Install Docker Engine on Ubuntu

首先卸载老版本

sudo apt-get remove docker docker-engine docker.io containerd runc

建立储存库

sudo apt-get update
sudo apt-get install \
    ca-certificates \
    curl \
    gnupg

添加官方的gpgkey

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

设置版本库

echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

更新apt

sudo apt-get update

安装Docker Engine, containerd, and Docker Compose.

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

验证helloword

sudo docker run hello-world

配置镜像源

和docker desktop一样配置镜像源,建议使用阿里云

登录->控制台->搜索容器镜像服务->‘镜像加速器’

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://你自己的.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

ps:在上述流程中如果碰到 Temporary failure resolving ‘gb.archive.ubuntu.com’

Temporary resolve问题,加入dns服务器

如果这能解决你的临时解析信息,那么要么等待24小时,看看你的ISP是否为你解决了问题(或者直接联系你的ISP)–或者你可以永久性地在你的系统中添加一个DNS服务器:

echo "nameserver 8.8.8.8" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

3.2.2 wsl - docker-engine自启动 (实现systemctl )

在单独的linux系统中,systemctl 可以对docker进行自启动,但是wsl初始系统并不支持systemctl ,每次重新启动wsl,都需要sudo service docker start

现在WSL2有了systemd的支持,我们可以在没有Docker桌面的情况下在WSL中运行Docker!!

教程:

**step1 启动systemctl **

启动wsl内部的linux分发版本,运行如下代码

# Enable systemd via /etc/wsl.conf
{
cat <<EOT
[boot]
systemd=true
EOT
} | sudo tee /etc/wsl.conf

exit

或者编辑vim /etc/wsl.conf

使得

[boot]
systemd=true

ps:上述设置, sudo systemctl start docker有还有问题的小伙伴。,可以换成

[boot]
#systemd=true
command = sudo service docker start

**step2 重启,测试systemctl **

wsl --shutdown
wsl --distribution Ubuntu ##Ubuntu指你的镜像版本,按wsl -l -vs输出的第一列来

测试过systemd 是否在运行

systemctl --no-pager status user.slice > /dev/null 2>&1 && echo 'OK: Systemd is running' || echo 'FAIL: Systemd not running'

step3 docker设置

# Install docker-compose
sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose
# 加入docker组
sudo usermod -aG docker $USER

#退出bash
exit

重新登陆

wsl --distribution Ubuntu

这时你会发现,不用sudo service docker start,docker也能启动了

而且,也能使用一些列如如下命令。

sudo systemctl restart docker
sudo systemctl start docker

3.2.3 NVIDIA Container Toolkit安装

nvidia-container-toolkit是使得linux系统在docker容器中具有调用gpu的能力。

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

使用条件:

NVIDIA/nvidia-docker: Build and run Docker containers leveraging NVIDIA GPUs (github.com)

已经说明:

Make sure you have installed the NVIDIA driver and Docker engine for your Linux distribution.

Note that you do not need to install the CUDA Toolkit on the host system, but the NVIDIA driver needs to be installed.

因此只用去x显卡装驱动和Docker就完事了!

安装教程Installation Guide — NVIDIA Cloud Native Technologies documentation

建立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/experimental/$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
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit

设置Docker daemon 守护进程识别Nvidia容器Runtime

sudo nvidia-ctk runtime configure --runtime=docker
##重启一下docker
udo systemctl restart docker

3.2.4 调用测试gpu

docker run --rm -it --gpus=all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark

Compute 7.5 CUDA device: [NVIDIA GeForce RTX 2070 SUPER]
40960 bodies, total time for 10 iterations: 56.638 ms
= 296.218 billion interactions per second
= 5924.356 single-precision GFLOP/s at 20 flops per interaction

则运行成功

3.3 自定义自己docker

无论是利用3.1Docker-desktop建立的还是Docker-engine建立的环境,均可以进行以下操作。

出发点:

考虑到目前官方docker-hub中提供的imag并不能满足日常的开发包的需要,且如果容器丢失或删除,所有包的数据和项目文件均会丢失。因此,我们可以定制自己的image。并将container的项目文件映射到自己的本地文件目录中。

可以使用vscode完成以下操作,方便编辑一点。

进入vscode,安装wsl 插件,连接wls(或着在wsl linux终端下,输入code .进入

ps: docker开发ide也可以使用vscode,只需要对安装Docker插件即可。

打开终端,如下图,当左下角绿色显式WSL:Ubutun…为连接成功

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

创建一个以后存docker镜像的目录

mkdir docker-deeplearning-project
cd docker-deeplearning-project

3.3.1 自定义所需要安装的包

我们想要在 tensorflow/tensorflow:latest-gpu 的基础上增加一些别的包,以满足日常需求,可以使用如下方法。打开vscode的终端,创建额外的requirments.txt!

code requirments.txt

安装以下包,这些包可以随各位去配

torch那可以指定版本,在torch官网可以挑选

jupyterlab
pandas
matplotlib
torch --index-url https://download.pytorch.org/whl/cu118
torchvision --index-url https://download.pytorch.org/whl/cu118
torchaudio --index-url https://download.pytorch.org/whlcu118

3.3.2 建立Dockerfile

dockfile建立规则

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

code Dockerfile

Dockerfile输入一下代码:

  • FROM:拉取现有base image

  • WORKDIR:定制工作目录

  • COPY 拷贝本地目录的requirements.txt到当前dockerfile中,通过此去安装额外的requirments包,

  • RUN 运行安装程序,-i 指定镜像源

  • EXPOSE 开辟一定端口

  • ENTRYPOINT 定义入口点,通过列表构建命令

FROM tensorflow/tensorflow:latest-gpu

WORKDIR /tf-jinqiu

COPY requirements.txt requirements.txt

RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

EXPOSE 8888

ENTRYPOINT ["jupyter","lab","--ip=0.0.0.0","--allow-root","--no-browser"] 

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

3.3.3建立docker-compose.yaml

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

code docker-compose.yaml

解析:

  • version:版本

  • services:定义服务

  • jupyter-lab:image名称

  • build: . 在当前目录

  • ports:映射端口

  • volumes:保存访问文件的部分。将其映射到本地文件中

  • deploy:share GPU

version: '1.0'
services:
  jupyter-lab:
    build: .
    ports:
      - "8888:8888"
    volumes:
      - /tf-jinqiu:/tf-jinqiu
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]

3.3.4 运行并测试

docker-compose up

出现如下输出,则证明安装成功。

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

复制底下的:http://127.0.0.1:8888/lab?token=d6e406efda3edf086b2baf4296a9400d53bee0d4221e1b9e

即可jupyter -lab

测试pytorch和TensorFlow ,gpu版本均能运行!!!

注意文件映射位置

因此我们项目地址可以存在container中/tf-jinqiu中。

开发项目的地址为docker-compose.yaml中设置的/tf-jinqiu。因此在container中/tf-jinqiu和wls ubuntu /tf-jinqiu目录下均有映射的文件。

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

进入vscode docker中,在容器中右键 Attach Visual Studio Code即可进入容器内,进行相关project的开发。

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

3.3.5 push 上传dockerhub

dockerhub可以上传官网的dockerhub,也可以上传阿里云的。

上传自己建好的docker可以方便以后迁移机器,直接部署。

(1) 官方dockerhub

保存自己docker的方式,可以采用docker-file配合docker-compose.yaml的方式,也可采用将整个镜像上传至Docker-hub中,一劳永逸。

保存dockerhub中,每次换机器只需要从docker中拉取镜像,即可快速部署相关环境。

  • 登录docker
docker login -u zhujinqiu   # zhujinqiu为自己的账号

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

  • docker容器变成镜像
// 找到运行中的容器 (复制你要打包的容器的id)
docker ps
// 打包为镜像 (86d78d59b104:容器的id 、  my_centos:我们要打包成的镜像的名字)
docker commit zhujinqiu my_centos
// 找到打包的镜像
docker images
  • 将镜像打为标签
// my_centos:镜像的名字   、 zhujinqiu:我们docker仓库的用户名 、 my_centos:我们刚才新建的仓库名 、 v1:版本号,可以不设置
docker tag my_centos zhujinqiu/my_centos:v1

  • 将镜像上传到镜像仓库
docker push zhujinqiu/my_centos:v1

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

  • 下载自己的镜像
// 记得先登录
docker login
// 根据版本号拉取
docker pull zhujinqiu/my_centos:v1
  • 修改镜像名字
// d583c3ac45fd  ID   后者是需要修改的名字
docker tag d583c3ac45fd myname:latest

(2)阿里云镜像仓库

容器镜像服务 (aliyun.com)

阿里云有详细的

首先创建镜像仓库仓库创建指南。

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

  1. 登录阿里云Docker Registry
$ docker login --username=你的用户名 registry.cn-hangzhou.aliyuncs.com

用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。

您可以在访问凭证页面修改凭证密码。

  1. 从Registry中拉取镜像
$ docker pull registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号]
  1. 将镜像推送到Registry
$ docker login --username=你的用户名 registry.cn-hangzhou.aliyuncs.com
$ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号]
$ docker push registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号]

请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。

  1. 选择合适的镜像仓库地址

从ECS推送镜像时,可以选择使用镜像仓库内网地址。推送速度将得到提升并且将不会损耗您的公网流量。

如果您使用的机器位于VPC网络,请使用 registry-vpc.cn-hangzhou.aliyuncs.com 作为Registry的域名登录。

  1. 示例

使用"docker tag"命令重命名镜像,并将它通过专有网络地址推送至Registry。

$ docker imagesREPOSITORY                                                         TAG                 IMAGE ID            CREATED             VIRTUAL SIZEregistry.aliyuncs.com/acs/agent                                    0.7-dfb6816         37bb9c63c8b2        7 days ago          37.89 MB$ docker tag 37bb9c63c8b2 registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816

使用 “docker push” 命令将该镜像推送至远程。

$ docker push registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816

4、wsl本地运行深度学习环境

该方法不借助Docker,因此需要直接在本地配置好WSL-Cuda,并安装各类深度学习框架,类似于把Windows上跑的模型搬到WSL跑。

该方法只需要安装Cuda。并不要装显卡驱动和Cudnn(wsl2已经支持本地Windows映射)。

4.1 安装wsl Cuda

CUDA Toolkit 12.1 Downloads | NVIDIA Developer

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

根据驱动情况、pytorch、Tensorflow情况选择合适的wsl——cuda版本。需要更改如下适应“12-1为11-8”

wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-wsl-ubuntu-11-8-local_11.8.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-11-8-local_11.8.0-1_amd64.deb
sudo cp /var/cuda-repo-wsl-ubuntu-11-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda

安装完需要,设置环境变量

vim ~/.bashrc

在最后加入,配置环境变量

export PATH=/usr/bin:$PATH
export PATH=/usr/local/cuda-11.8/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH

更新下source

source ~/.bashrc

使用nvcc -V验证安装成功与否

nvcc -V

2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu),docker,深度学习,wsl,docker,深度学习,tensorflow,pytorch,人工智能

4.2 安装pytorch环境

1、miniconda安装

# 下载安装包
wget -c https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
chmod 777 Miniconda3-latest-Linux-x86_64.sh
# 安装conda
bash Miniconda3-latest-Linux-x86_64.sh

安装完需要,设置环境变量

vim ~/.bashrc

更新下source

source ~/.bashrc

配置miniconda环境变量

export PATH=~/miniconda3/bin:$PATH

4.3 创建虚拟环境与pytorch安装、tensorflow安装

conda create -n env_pytorch python=3.8

# conda env list 查看虚拟环境list
# 激活
conda activate env_pytorch

1、安装pytorch

Start Locally | PyTorch

根据cuda版本选择合适的torchgpu版本

## -i 清华镜像加速 安装torchgpu
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

2、安装tensorflow

ps:新版本直接安装即可

TensorFlow (google.cn)文章来源地址https://www.toymoban.com/news/detail-742935.html

# Requires the latest pip
pip install --upgrade pip

# Current stable release for CPU and GPU
pip install tensorflow

4.4 测试gpu

## torch
import torch
torch.cuda.is_available()
## tensorflow
import tensorflow as tf
tf.config.list_physical_devices()

到了这里,关于2023最新WSL搭建深度学习平台教程(适用于Docker-gpu、tensorflow-gpu、pytorch-gpu)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Hexo+GitHub搭建个人博客教程(2023最新版)

    1、node环境 首先,安装 nodejs, 因为Hexo是基于 Node.js 驱动的一款博客框架。 ⭐nodejs下载地址 2、git 环境 然后,安装git, 一个分布式版本控制系统,用于项目的版本控制管理,作者是 Linux 之父。 ⭐Git(官网) ⭐Git for Windows(仅windows安装包) ⭐CNPM Binaries Mirror [阿里镜像](速

    2024年02月06日
    浏览(67)
  • L2TP一键搭建脚本天翼云IP搭建教程23年11月12日最新教程5分钟学会搭建纯独享工作室游戏IP适用多开雷电模拟器挂机等

    此教程搭建不能用于非法用途,目前市面上天翼云是性价比最高最划算的服务商,开通最低折扣账户后,搭建IP成本仅需5元每月一条纯独享IP 此教程搭配一键搭建脚本,没有任何电脑操作经验的人也可以5分钟轻松学会 好多人不知道L2TP协议和SK5协议有什么不同,下面我简单给

    2024年02月01日
    浏览(221)
  • 2023年最新版潮乎盲盒源码含搭建教程

    后台开发语言:后端 Laravel 框架开发 前端开发框架:uniapp+vue 环境配置: php7.4 + mysql5.6+ + nginx1.22+  + redis(建议宝塔面板或 lnmp) 源码获取请自行百度:一生相随博客 一生相随博客致力于分享全网优质资源,包括网站源码、游戏源码、主题模板、插件、电脑软件、手机软件、

    2024年02月06日
    浏览(49)
  • 【2023最新版】腾讯云CODING平台使用教程(Pycharm/命令:本地项目推送到CODING)

    目录 一、CODING简介 网址 二、CODING使用 1. 创建项目 2. 创建代码仓库 三、PyCharm:本地项目推送到CODING 1. 管理远程 2. 提交 3. 推送 4. 结果 四、使用命令推送 1. 打开终端 2. 初始化 Git 仓库 3. 添加远程仓库 4. 添加文件到暂存区 5. 提交更改 6. 推送         腾讯云 CODING 平台是

    2024年02月09日
    浏览(79)
  • 【开发工具】适用于Windows的Linux子系统一一WSL安装使用教程

    一、简介 Windows Subsystem for Linux(简称WSL)是一个在Windows 1011上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu、Debian等映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上

    2024年02月05日
    浏览(55)
  • 深度学习与人工智能:如何搭建高效的机器学习平台

    深度学习和人工智能是当今最热门的技术趋势之一,它们在各个领域都取得了显著的成果。然而,在实际应用中,搭建一个高效的机器学习平台仍然是一项挑战性的任务。在本文中,我们将讨论如何搭建一个高效的机器学习平台,以及深度学习和人工智能在这个过程中所扮演

    2024年02月19日
    浏览(58)
  • 最新开源微信小程序一键开发平台源码 支持15大功能模块+完整前后端+搭建教程

    分享一个开源微信小程序一键开发综合平台源码,系统支持15大小程序功能模块,涉及各行各业,含完整前后端+详细搭建部署教程。   系统特色功能一览: 1、全新重构升级功能后端文件和前端文件; 2、整套源码已经集成15大主流小程序功能,涉及到各行各业 ,如:微同城

    2024年02月12日
    浏览(38)
  • 通过Android Studio 将yolov5部署到手机端(2023新手最新适用版)

    下载java17 Java Downloads | Oracle 配置环境变量 这个是我安装后的路径,将这个路径复制 设置环境变量 在系统变量点击新建 继续新建 继续新建 新建完成后点击确定 测试Java17 安装成功!!!! Android Studio 下载 下载链接:Download Android Studio App Tools - Android Developers (google.cn) 当前版

    2024年02月08日
    浏览(49)
  • 使用腾讯云服务器+Nonebot2+go-cqhttp搭建QQ聊天机器人【保姆级教程 2023最新版】

    下载go-cqhttp 这里有不同版本的cqhttp,并且对每个版本都有介绍。但是大家可以看到有 arm与adm 不同的版本,这两个啥关系呢? 严格来说, AMD和ARM没有任何关系 。AMD是桌面级处理器和桌面级GPU的生产厂商,而ARM是移动级处理器的生产厂商。AMD是目前业内唯一一个可以提供高性能

    2023年04月18日
    浏览(47)
  • Anaconda安装教程以及深度学习环境搭建

    目录 前言 下载Anaconda 虚拟环境的搭建 在pycharm中配置现有的conda环境 CUDA简介 下载安装pytorch包 最近换新笔记本了,要重新安装软件,以前本来是想要写这个教程的,但当时由于截图不全还要懒得再下载重装,就放弃了,到后面又搁置了,而现在还要重新配置环境,所幸我有

    2024年02月11日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包