安装WSL2、Docker全网最最详细教程之一

安装WSL2、Docker全网最最详细教程之一
一、Windows允许虚拟服务的设置这是最底层的准备工作相当于为 WSL2 准备好“地基”。它需要启用两个关键的 Windows 可选功能适用于 Linux 的 Windows子系统提供 WSL 的基础 API 和管理接口。虚拟机平台提供 Hyper-V 虚拟化能力让 WSL2 能在轻量级虚拟机中运行真实内核。这两个功能必须通过管理员权限的 PowerShell 命令或在控制面板“启用或关闭 Windows 功能”界面开启并重启电脑后才能生效。没有它们后续所有操作都无法进行。二、安装WSL以及wsl内核1、一键安装wsl框架和内核需要魔法正常情况下输入以下命令运行并等待其自动完成即可。wsl -install一般运行后会出现下图注意一键安装的过程中需要魔法但是如果上述命令运行后在下载wsl内核的时候出现网络受限或者说下载得到的内核版本太旧就需要进行手动安装wsl内核。a哥也在下面详细介绍了手动下载内核的方式。2、手动下载2.1 下载WSL的内核附内核下载地址 地址里选择.msi后缀的文件进行下载根据网速需要十几分钟到半小时不等。下载好WSL内核之后双击运行然后依次点击下一步....完成。重新打开一个新的powershell输入命令检查内核是否安装成功。注意更新或者新安装了wsl内核后一定要用命令wsl --shutdown 重启wsl使用命令 wsl --version查看内核和wsl服务是否正常2.2 下载Linux发行版这里以Ubuntu 22.04为例方法一、使用命令下载方法二、手动下载发行版安装包然后导入。对于分发版提供两个选择下载链接1 .wsl 支持日常学习、轻度开发因为它已经内置了轻度的工具输入命令wsl --import 分发版名称 安装路径 .wsl 文件路径 --version 2其中 分发版名称 是你自己命名的。安装路径也是自定义的不过要在执行这个命令前在文件系统创建这个目录。下载链接2 rootfs支持服务器部署、容器化、高度定制化因为里面就是纯净的wsl环境输入命令wsl --import 分发版名称 安装路径 rootfs.tar.gz 文件路径 --version 2其中分发版名称 是自己命名的。安装路径也是自定义的不过要在执行这个命令前在文件系统创建这个目录。如图输入命令出现下面的就是正常导入成功见下图同时一般导入成功之后会出现这个弹窗。三、安装好WSL2后1、导入成功一定要做的步骤1.1输入 wsl -d Ubuntu22 进入系统。1.2在 Linux 终端里输入以下命令创建用户把 yourname 换成你想要的用户名a.新建用户并加入用户组里b.确保用户名为小写之后按提示输入两次密码c.退出 WSL (exit)回到 PowerShell执行这条命令把它设为默认登录用户注意的是用户名不符合 Linux 系统默认的用户名命名规则导致的。Linux 的 adduser 命令会根据 /etc/adduser.conf 中定义的 NAME_REGEX 正则表达式来校验用户名而用户名包含大写字母被系统判定为无效名称。四、安装Docker desktop1、下载 Docker下载官网1选择那个amd64的Docker desktop电脑是x86的有人问我们不是在windows电脑上安装了WSL2吗不是应该安装Linux版本你可以把 Docker Desktop 想象成一个“大管家”而 WSL2 是它手下的“苦力”。Docker Desktop (Windows版)它负责在 Windows 界面上给你提供一个可视化的操作面板Dashboard让你能方便地管理镜像、容器还能自动处理网络映射比如把容器里的端口映射到 Windows 的 localhost。WSL2它负责在后台干脏活累活。Docker Desktop 安装后会自动在你的 WSL2 里配置好环境让容器真正跑在 Linux 内核上。2、双击运行Docker注意运行后应该会出现弹窗选择 use wsl instead of hyper-v.如果没有出现也没事因为大部分默认是支持wsl.3、启动之后如果之前你的wsl框架以及内核华友分发版安装成功之后你的Dockerdesktop启动后应该会出现下面的页面。可以看见右边是对如何部署第一个容器有简单的说明。4、使用Docker desktop管理如果我们想在Windows上用 Docker Desktop 管理同时能在 WSL 的终端里使用 docker 命令。就需要点击setting右上角齿轮图案---resource---wsl integration截止到现在如果读者看a哥文章到这里那么恭喜你的WSL和Dockerdesktop已经配置好了。接下来就可以去部署一个项目到docker里了。下面是一些常见的问题以及相关解答如果有错误的地方还希望读者能提出便于后学者不会产生错误理解。问题:1、首次启动 WSL 时会提示创建用户名和密码。这个用户名密码重要吗这个账号会被视为该 Linux 发行版的默认管理员账户。以后您在 WSL 中执行需要管理员权限的命令例如安装软件、修改系统配置等时都需要使用 sudo 命令此时系统就会要求您输入这个密码来进行身份验证。与 Windows 账户完全独立。如果您安装了多个不同的 Linux 发行版它们各自都有独立的用户名和密码。如果您不小心忘记了这个密码也不用担心可以通过 Windows 的 PowerShell 强制重置。具体步骤如下以管理员身份打开 PowerShell。输入命令 wsl -u root 进入 WSL 的 root超级管理员模式。输入 passwd 您的用户名然后根据提示输入并确认新密码即可。2、为什么使用rootfs而不使用ISO镜像特性ISO 镜像WSL rootfs.tar.gz用途虚拟机/物理机安装WSL 专用轻量系统包含内容引导程序、内核、图形界面、驱动仅根文件系统/bin, /etc, /usr 等大小3–4 GB~300 MB是否兼容 WSL❌ 不兼容✅ 原生支持3、如何查看是否导入分发版以及如何注销分发版本4、分发版是以离线包形式导入指定盘符是否还需要迁移不需要迁移常见有以下两种方式为了空间第一种才需要迁移在线安装/默认安装如果你是用 wsl --install 或者微软商店安装的系统会默认把文件塞进 C 盘的用户目录下C:\Users\...\AppData\...。那种情况才需要“导出-注销-导入”来搬家。导入分发版的离线包最开始是直接用了 wsl --import ... D:\WSL\...相当于出生就在 D 盘一步到位。5、如果说你先是导入了一个分发版但是后来对这个不满意是否可以删除当然可以使用命令wsl --unregister 你的分发版名字其中分发版名字是使用 wsl --status命令显示出来的。总结以上就是作者对WSL2安装的总过程以及安装Docker desktop的全部过程以及Docker的简单知识如果后面读者有需要的话作者也会继续更新。如果这篇文章对你有帮助的话希望各位观众姥爷能够一键三连你的点赞关注是我持续创作的动力。