window11系统基于 wsl2 安装Linux发行版ubuntu,并安装docker及vscode

2023-11-06

前景介绍:

WSL是“Windows Subsystem for Linux”的缩写,顾名思义,WSL就是Windows系统的Linux子系统,其作为Windows组件搭载在Windows10周年更新(1607)后的Windows系统中。

既然WSL是“子系统”,那么WSL的地位我们能大概推测出——

  1. “子系统”作为系统层的一部分,相较于应用层(虚拟机)会消耗更少的资源,并且与系统锲合度更高。

  2. 因为“子系统”依附于“系统”,所以“子系统”会受到一些限制。

事实上,的确是这样!只需要打开一个类似CMD的Bash命令行窗口,你的WSL就可以使用了(相当于建立了一个Session,因为WSL会一直伴随Win10的运行而运行),相对于从虚拟机启动既省时又省力。
除此之外,虽然WSL不是完整的Linux系统,但你依然可以做到绝大多数在完整Linux系统能做的事(比如vim, apt-get等)。

我们知道,Linux是一个系统内核,那么WSL是Linux发行版吗?并不是。WSL本质上是系统层面对Linux内核的支持

1.在PowerShell中安装 wsl

wsl --install

如果wsl安装不了,先将步骤2中的额外内核包下载安装

2.检查正在运行的 WSL 版本

wsl -l -v

在这里插入图片描述

如果 VERSION 是 1 的话,可以通过 wsl --set-version Ubuntu-22.04 2 将 version 版本改为 2

可能遇到的问题

如果将版本从1更改为2失败,(或者没有wsl,可以先完成第三步再下载后面这个内核包),需要额外的内核包,则下载https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi该内核包,并运行安装

安装完后,重启,再次将默认version版本更改为 2

3. 设windows相关配置

导航栏搜索【启用或关闭windows功能】

勾选【适用于linux和Windows子系统】和【虚拟平台】和【Windows 虚拟机监控程序平台】
在这里插入图片描述

以管理员身份运行PowerShell,运行

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

4.Microsoft Store应用商店下载Ubuntu 20或22版本

在这里插入图片描述
第一次启动需要几分钟时间
在这里插入图片描述
然后设置用户名,密码
这时算是安装好了Windows下的linux发行版本了

4.2 使用Winget安装PowerShell(可选)

先搜索最新版的powershell

winget search Microsoft.PowerShell

在这里插入图片描述
如果没有winget的话

winget install --id Microsoft.Powershell --source winget
winget install --id Microsoft.Powershell.Preview --source winget
以上任选一个版本下载即可

可能出现的问题
没有winget
在PowerShell中运行如下 去安装winget

Install-Module -Name Microsoft.WinGet.Client

更改默认启动的终端
在这里插入图片描述

5.安装docker destop

此时如果在Ubuntu子系统中安装docker,则无法启动docker服务,没有systemctl
可以通过安装docker destop来运行docker

  1. 点此下载安装最新版的docker
  2. 打开docker destop后进入设置页面,打开对应的ubuntu发行版本
    此时无论进入WSL发行版(ubuntu)或者PwerShell都可以进行docker操作了
    在这里插入图片描述

可能出现的问题

docker桌面版,通过左下角点开或者在桌面版上岸 ctrl+, 就会闪退
解决:
暂未解决,打开页面后,直接点击右上角的设置,进入设置页面,不要按ctrl+,或者右下角的标志

或者可以参考这篇-》博客

6.使用VSCODE中在远程容器中开发

1.安装 VS Code WSL 扩展

在这里插入图片描述
此扩展使你能够在 VS Code 中打开在 WSL 上运行的 Linux 项目(无需担心路径问题、二进制兼容性或其他跨 OS 的难题)。

2.安装 VS Code 开发容器扩展(Dev Containers)

在这里插入图片描述
此扩展使你能够打开容器内的项目文件夹或存储库,并利用 Visual Studio Code 的完整功能集在容器中执行开发工作。

3.安装 VS Code Docker扩展(docker)

在这里插入图片描述
此扩展添加了从 VS Code 内生成、管理和部署容器化应用程序的功能。 (需要开发容器扩展才能将容器实际用作开发环境。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

window11系统基于 wsl2 安装Linux发行版ubuntu,并安装docker及vscode 的相关文章

随机推荐

  • 华为OD机试 C++ 【座位调整】

    题目 由于疫情原因 学生之间的座位要保持一定距离 每个学生的左右都要至少有一个空座 给定一个代表座位情况的数组desk 其中1代表有学生坐在那个位置 0代表该位置为空 问你在保持疫情安全距离的前提下 我们还能安排多少学生 输入 一个整数数组
  • WPS授权过期问题解决方案——编程方法

    在使用WPS时 有时会遇到授权已到期的提示 这意味着您的WPS软件无法再正常使用 然而 通过编程 我们可以采取一些方法来解决这个问题 本文将介绍一种通过编程来解决WPS授权过期问题的方法 解决WPS授权过期问题的一种常见方法是修改系统的ho
  • python中mean的用法_Python Pandas dataframe.mean()用法及代码示例

    Python是进行数据分析的一种出色语言 主要是因为以数据为中心的python软件包具有奇妙的生态系统 Pandas是其中的一种 使导入和分析数据更加容易 Pandas dataframe mean 函数返回所请求轴的平均值 如果将方法应用
  • C语言实现二叉树(链式存储结构)+ 遍历

    C语言实现链式存储结构二叉树遍历 结构体定义及三种遍历方法 1 结构体定义 2 先序遍历 先序遍历的递归实现 先序遍历的非递归实现 3 中序遍历 中序遍历的递归实现 中序遍历的非递归实现 4 后续遍历 后序遍历的递归实现 5 二叉树的递归建
  • 九款实用的在线画图工具(那些可以替代Visio的应用)

    Visio是付费软件 通常会遇到下载 安装以及 授权 等各种问题 今天介绍的几款在线作图工具 帮你抛开下载 安装 授权等各种烦恼 1 LucidChart LucidChart是一个基于HTML5的在线流程图绘制和协作应用平台 用户可以方便
  • 冒号等于(:=)在Python语言中是什么意思?

    Python 3 8中提供了此语法 在Python语言中支持 运算符 以允许在表达式中进行变量赋值 此符号 是Python语言中的赋值运算符 主要称为海象运算符 简而言之 海象操作符压缩了我们的代码以使其更短 下面是一个非常简单的例子 wi
  • WSL编译linux-5.16.9 时出现 fatal error: libelf.h: No such file or directory

    make时出现两个错误 第一个是
  • Mac安装Android Studio并配置环境变量

    Mac安装Android Studio并配置环境变量 文章目录 Mac安装Android Studio并配置环境变量 安装JDK 下载并安装Android Studio 配置环境变量 安装JDK 检查 JDK 版本 在终端输入 java v
  • echarts地图自定义tooltip样式

    效果图 自定义tooltip样式 tooltip position 50 50 trigger item backgroundColor rgba 0 0 0 0 borderColor rgba 0 0 0 0 extraCssText
  • SQL学习笔记——REGEXP运算符

    REGEXP运算符 是正则表达式 regular expression 的缩写 正则表达式在搜索字符串时非常强大 下面是关于它的应用 1 查找名字中包含field的顾客 select from customers where last na
  • pytorch从0开始安装

    文章目录 一 安装anaconda 1 安装pytorch前需要先安装anaonda 首先进入官网 Anaconda The World s Most Popular Data Science Platform 进行安装相应的版本 2 接着
  • java编辑文件FileUtils

    FileUtiles 进行获取文件 把每行添加到字符串数组里 然后对每行进行替换 最后写回文件里 import org apache commons io FileUtils try str FileUtils readFileToStri
  • Python 学习资源 ( 整理日期2010-02-24 )

    Python 简明教程 入门必看 在线 浏览 http www woodpecker org cn 9081 doc abyteofpython cn chinese index html PDF http bbs chinaunix ne
  • 小酌Django4——博客文章展示

    小酌Django4 博客文章展示 文章列表页 已发布的文章列表展示页面 展示文章标题 交互模式下的数据读取 blog models py中创建数据模型后 Django会自动提供数据库抽象的API ORM 进行增删改查操作 使用命令pytho
  • TCP/IP 通信

    学习资料来源 正点原子STM32 目录 TCP IP TCP连接 TCP终止连接 MAC LAN8720 DMA LWIP内存分配 内存池 内存堆 数据包管理 pbuf介绍 数据包申请与释放 网络接口管理 ARP协议 TCP IP TCP是
  • input 去除边框/设置placeholder样式--SCSS

    input 去除边框 设置placeholder样式 SCSS el input edit v deep input webkit input placeholder font size 22px el input inner border
  • scrapy爬虫框架实例二 当当图书信息

    spider py import scrapy from DD items import DdItem class DdSpider scrapy Spider name dd allowed domains http search dan
  • 如何用crontab每隔1分钟执行一个命令行脚本

    我在 home 下面写了一个a sh bin sh echo hello gt home hello txt 然后在crontab e中设置了 1 home a sh 为何等了好几分钟 home下面还是没有hello txt呢 指定一下用什
  • python制造童年回忆【猫和老鼠小游戏】(附源码+详细分析)

    周末好吖 铁汁们 到了看动画片 打游戏 敲代码 的美好宅时光了 大家小时候有没有看过一部 猫和老鼠 的动画片80 90 00 应该都知道吧 10后可能就没听过了 接下来 让我隆重介绍本期游戏的主角们 他们就是 汤姆和杰瑞 相信不用我多介绍吧
  • window11系统基于 wsl2 安装Linux发行版ubuntu,并安装docker及vscode

    前景介绍 WSL是 Windows Subsystem for Linux 的缩写 顾名思义 WSL就是Windows系统的Linux子系统 其作为Windows组件搭载在Windows10周年更新 1607 后的Windows系统中 既然