Windows(WSL2) Linux子系统搭建Docker环境
摘要:本文主要介绍了如何再Windows(WSL2)中启用Linux系统中,并搭建Docker环境。
WSL是适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。
1. Windows版本要求
要在Windows启用WSL2功能,Windows必须达到特定的版本要求,首先必须是Win10系统,对于不同的CPU架构也有要求:
- 对于 x64 系统:版本 1903 或更高版本,采用内部版本 18362 或更高版本。
- 对于 ARM64 系统:版本 2004 或更高版本,采用内部版本 19041 或更高版本。
- 低于 18362 的版本不支持 WSL 2。 使用 Windows Update 助手更新 Windows 版本。
另外,对于 Windows 10 版本1903 或 1909 内部版本号必须是 18362.1049+ 或 18363.1049+,也就是说次要内部版本号需要高于 .1049。
按“Win键 + R” 输入 winver 可查看当前系统版本
下面是我电脑的Windows 10版本(2004):

2. 启用虚拟机和Linux子系统功能
以管理员身份打开 PowerShell 并运行(右键开始菜单图标),注意,一定要“以管理员的身份打开”
运行下面的命令开启Linux子系统功能:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
运行下面的命令开启虚拟机功能:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
执行上面两句命令后就可以开启Linux子系统和虚拟机功能了,可以通过“设置->应用->程序和功能(应用界面右边相关设置下面)->启用或关闭Windows功能”查看

其实也可以不通过命令,通过界面操作启用这两个功能。
最后,重启Windows,!!!!记得重启,之后才能安装Linux内核包!!!!
3. 下载并安装 Linux 内核更新包
安装Linux内核更新包之前请确认Windows系统已经启用Linux子系统和虚拟机功能,并完成重启。
可以通过https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi这个地址下载Linux内核更新包,并安装。
这个下载地址是X64 Windows系统的,如果是Arm64的可以点击这里下载Arm64
4. 将 WSL 2 设置为默认版本
以管理员的身份打开 PowerShell,将 WSL 2 设置为默认版本:
wsl --set-default-version 2
如果通过以上几步没有遇到问题,那么恭喜你,WSL2环境已经启用成功。
5. 安装Linux系统
WSL2环境启用成功后,就可以安装Linux系统了,通过 Microsoft Store 搜索 Ubuntu 选择适合自己的Ubuntu版本,下载并安装(这里我安装的是18.04)

安装完成后,首次启动Ubuntu会有一个初始化过程,需要几分钟,然后创建一个Ubuntu账号

最后完成账号创建,就可以使用Ubuntu子系统了,这样就可以跟使用Windows应用一样使用Ubuntu系统了。
6. 换源
一般来说装完Linux系统第一件事就是换源,毕竟国内访问外网的网速感人,这里采用的是清华源,可以通过下面的地址获取清华源的配置
https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
选择适合自己系统版本的源配置

配置源:
cd /etc/apt/
# 备份
mv sources.list sources.list.def
sudo vim sources.list
# INSERT:::粘贴清华源的配置
sudo apt-get update
7. 安装Docker
Ubuntu安装Docker很简单,只需要一句命令就行:
sudo wget -qO- https://get.docker.com | sh
这个安装过程可能有点久,大概需要10~20分钟,安装完成之后可以看到如下面截图的打印

!!! 执行上面红色方框内的命令 ,完成Docker的安装。
8. 运行Docker容器
Docker安装完成之后可以通过简单的运行Docker容器来测试是否正常安装。
首先启动Docker后台进程:
sudo service docker start
运行hello-world容器:
sudo docker run hello-world
如果Docker安装没有问题,则可以成功运行hello-world容器:

=========================================================
Docker源配置可关注公众号 “HiIT青年” 发送 “Docker源配置” 获取。

关注公众号,阅读更多文章。
Windows(WSL2) Linux子系统搭建Docker环境的更多相关文章
- 使用Windows的Linux子系统搭建嵌入式开发环境
亲,都9102年了,还在用VMware跑嵌入式交叉编译链吗? 北京时间2019年6月13日,Windows 10发布预览版本18917.版本的主要功能是Linux子系统(windows sub ...
- windows和linux中搭建python集成开发环境IDE——如何设置多个python环境
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
- 【转】windows和linux中搭建python集成开发环境IDE
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
- Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2]
Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2] 2015-07 北京海淀区 ...
- Linux下搭建PHP环境
转载于: http://www.uxtribe.com/php/405.html 该站下有系列PHP文章. 在Linux下搭建PHP环境比Windows下要复杂得多.除了安装Apache,PHP等软件 ...
- windows 7 下快速搭建php环境(windows7+IIS7+php+mysql)
原文:windows 7 下快速搭建php环境(windows7+IIS7+php+mysql) 1).采用理由: 优点:最大化的桌面图形化操作系统,可维护性优秀.基于IIS v6.0/v7.0(20 ...
- Windows安装Linux子系统--安装GUI界面
原文:Windows安装Linux子系统--安装GUI界面 前段时间发现Windows可以安装Linux子系统了,恰逢电脑换了固态,还没装Linux,不如趁机体验一番! 1.准备工作 1.1.打开 ...
- Java学习心得之 Linux下搭建Java环境
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建Java环境 1.前言2.JDK安装3.配置环境变量4. ...
- Java学习心得之 Linux下搭建JavaWeb环境
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 Linux下搭建JavaWeb环境 1. 前言2. Java安装3. t ...
随机推荐
- Django总结(Django十一)
总结一下自己在完成毕设时写的Django博客: Django的初步启动 pycharm+Django启动我的第一个页面 Django+bootstrap启动登录模板页面 Django中 < a ...
- memcached缓存:安装和清缓存
一.安装步骤: 1.将工具一直解压,解压到最底层的exe目录
- Bootstrap学习第二天轮播插件
Bootstrap不仅提供了整套的样式,还提供了一系列插件,帮助开发者构建更受欢迎的网站. Bootstrap的轮播插件用起来很简单,代码如下. <!DOCTYPE html> <h ...
- Java编程系列文章序言
Java编程系列分为基础编程和高级编程两部分: 其中基础编程包括基础语法如变量和标识符,流程控制等,数组如一维数组二位数组等,及面向对象,异常处理: 高级部分多线程,常用类,注解,Java集合,泛型, ...
- python文档翻译之概述
Python是一个使用方便且功能强大的变成语言.它具有高效的高级数据结构和面向对象编程特性.其优雅的语法.动态类型.解释型特性使得它成为大多数平台上脚本和快速应用程序开发的理想语言. Python解释 ...
- # js权威指南之对象篇
对象是js中的关键 属性查找 in,Object.hasOwnProperty(),Object.propertyIsEnumerable()都能检测出对象内是否存在某个属性 in关键字 自有属性/继 ...
- Python练习题 020:累积累加
[Python练习题 020] 求1+2!+3!+...+20!的和 -------------------------------------------------- 据说这题是"累积累 ...
- go分库分表 主从分离例子
网上有很多介绍分库分表的文章,方法很多: 分区表切分 垂直切分 水平切分 区间切分 取模切分 这里不细说 分库分表简单,但后期会带来一系列的难题: 事务 Join 分页 数据库: master和sla ...
- 64位系统 system32 和 syswow64
\Windows\SysWOW64 文件夹下存放32位的库和应用程序 (WOW64 == Windows on Windows 64 bit ) \Windows\System32 文件夹下存放6 ...
- 【转载】C/走迷宫代码
1 #include<iostream> 2 #include<windows.h> 3 #include"GotoXY.h" 4 #include < ...