首页 > Linux操作系统 > Linux操作系统 > win10安装docker
WSL: The W indows Subsystem for Linux lets developers run a GNU/Linux environment -- including most command-line tools, utilities, and applications -- directly on Windows, unmodified, without the overhead of a traditional virtual machine or dualboot setup
docs.microsoft.com/zh-cn/windows/wsl/install-win10#step-4---download-the-linux-kernel-update-package
当使用 Hyper-V 时,某些第三方应用程序无法工作,这意味着当启用了 WSL 2 时,这些应用程序(如 VMware 和 VirtualBox)将无法运行。 但最近,VirtualBox 和 VMware 都发布了支持 Hyper-V 和 WSL2 的版本。
微软推出了 WSL (Windows Subsystem for Linux),该工具相当于一个运行在 Windows 下面的 Linux 子系统,这让 Windows 和 Linux 之间的环境界限变得更加不明显了,特别是 WSL2 版本推出以后,完全具有了在 WSL2 中运行 Docker 的能力了,所以现在我们几乎可以无缝地在 WSL2 上面运行 Kubernetes。
1、 适用于 Linux 的 Windows 子系统可让开发人员直接在 Windows 上按原样运行 GNU/Linux 环境(包括大多数命令行工具、实用工具和应用程序),且不会产生传统虚拟机或双启动设置开销。
grep
、
sed
、
awk
)或其他 ELF-64 二进制文件。2、 将适用于 Linux 的 Windows 子系统从 WSL 1 升级到 WSL 2 的主要区别和优势是:
WSL 2 使用最新、最强大的虚拟化技术在轻量级实用工具虚拟机 (VM) 中运行 Linux 内核。 但是,WSL 2 不是传统的 VM 体验。
WSL 2 仅适用于 Windows 10 版本 1903、内部版本 18362 或更高版本。
通过按 Windows 徽标键 + R,检查你的 Windows 版本,然后键入
winver,选择“确定”。
(或者在 Windows 命令提示符下输入
ver
命令)。
低于 18362 的版本根本不支持 WSL
。
3、下载安装Docker Desktop Installer.exe
hub.docker.com/editions/community/docker-ce-desktop-windows
由于( Requires Microsoft Windows 10 Professional or Enterprise 64-bit, or Windows 10 Home 64-bit with WSL 2)按提示下载安装
wsl_update_x64.msi
4、The Hyper-V role cannot be installed on Windows 10 Home,
docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v
Enable Hyper-V using PowerShell:
在powershell以管理员权限执行:Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
然后按提示重启系统。查看服务显示:
之前的服务状态是:
5、开启角色(创建虚拟机需要,docker不知是否需要)
6、Windows Subsystem for Linux (WSL)2引入了一个重要的体系结构更改,因为它是由Microsoft构建的完整Linux内核, 允许Linux容器在没有仿真的情况下本机运行。随着Docker Desktop在WSL2上运行,用户可以利用Linux工作区, 避免同时维护Linux和Windows构建脚本。此外,WSL2还改进了文件系统共享、引导时间,并允许Docker桌面用户访问一些很酷的新功能。Docker Desktop使用WSL 2中的动态内存分配功能,极大地提高了资源消耗。这意味着,Docker Desktop只使用所需的CPU和内存资源,同时使CPU和内存密集型任务(如构建容器)运行得更快。此外,使用wsl2,冷启动后启动Docker守护程序所需的时间要快得多。启动Docker守护进程所需时间不到10秒,而在以前版本的Docker Desktop中,这一时间几乎为1分钟。
7、PS C:\Users\mi_zy> wsl --list --verbose
NAME STATE VERSION
* docker-desktop Running 2
docker-desktop-data Running 2
Ubuntu Running 2
8、参见:docs.microsoft.com/zh-cn/windows/wsl/install-win10
a)、简化安装(预览版):要使用
wsl --install
简化安装命令,你需要加入
Windows 预览体验计划
并安装 Windows 10 的预览版(OS 版本 20262 或更高版本),但不需要执行手动安装步骤。
只需使用管理员权限打开命令窗口并运行
wsl --install
,重启后即可使用 WSL。
b)、手动安装: WSL 的手动安装6个步骤,可按这些步骤在任意版本的 Windows 10 上安装 Linux,详见链接。
8.1、启用WSL2(
适用于 Linux 的 Windows 子系统
只能在系统驱动器(通常是
C:
驱动器)中运行
。
请确保分发版存储在系统驱动器上)
PS C:\windows\system32> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
部署映像服务和管理工具
版本: 10.0.19041.746
映像版本: 10.0.19042.804
启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。
8.2、检查运行 WSL 2 的要求: 若要更新到 WSL 2,需要运行 Windows 10, 对于 x64 系统: 版本 1903 或更高版本,采用 内部版本 18362 或更高版本(运行:systeminfo命令,本机Microsoft Windows 10 专业版OS 版本: 10.0.19042 暂缺 Build 19042;Hyper-V 要求: 已检测到虚拟机监控程序。将不显示 Hyper-V 所需的功能。)
8.3、启用虚拟机功能:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
8.4、见本文步骤3,下载 Linux 内核更新包: wsl_update_x64.msi
8.5、将 WSL 2 设置为默认版本:wsl --set-default-version 2
8.6、安装所选的 Linux 分发, 打开 Microsoft Store ,并选择偏好的 Linux 分发版( Ubuntu 20.04.2 LTS), 首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。 然后,需要 为新的 Linux 分发版创建用户帐户和密码 。 更新包目录并使用分发版的首选包管理器升级已安装的包:sudo apt update && sudo apt upgrade
8.7、安装 Windows 终端(可选)
Windows 终端可启用多个选项卡(在多个 Linux 命令行、Windows 命令提示符、PowerShell 和 Azure CLI 等之间快速切换)、创建键绑定(用于打开或关闭选项卡、复制粘贴等的快捷方式键)、使用搜索功能,以及使用自定义主题(配色方案、字体样式和大小、背景图像/模糊/透明度)。
*:将分发版版本设置为 WSL 1 或 WSL 2
使 WSL 2 成为你的默认体系结构, 这会将安装的任何新分发版的版本设置为 WSL 2,可以通过此命令执行该操作:wsl --set-default-version 2
9、 若要开始使用 Docker 和 WSL 2 来开发应用,我们建议使用 VS Code,以及 WSL 扩展和 Docker 扩展。
VSCodeUserSetup-x64-1.53.2.exe;
Remote-WSL:Remote Development - Visual Studio Marketplace:除了远程 SSH 和远程容器扩展外,此扩展包还包括远程 WSL 扩展,使你能够打开容器、远程计算机或 WSL 中的任何文件夹。 此扩展使你能够在 VS Code 中打开在 WSL 上运行的 Linux 项目, (无需担心路径问题、二进制兼容性或) 的其他跨操作系统挑战。
Remote - Containers extension:此扩展使你能够在容器中打开你的项目文件夹或存储库,利用 Visual Studio Code 的完整功能集来完成容器中的开发工作;
Docker extension: 此扩展添加了从 VS Code 内部生成、管理和部署容器化应用程序的功能。 (需要 Remote-Container 扩展,才能实际使用容器作为开发环境。 )
10、安装 Git For Windows:Git-2.30.1-64-bit.exe
11、Docker Desktop可以在Windows containers和Linux containers之间切换。
12、实操记录:初始安装的win10专业版系统(版本20H2,内部版本 19042.867),开启Windows功能:“WSL”:适用于Linux的Windows子系统
PS C:\WINDOWS\system32> wsl --list --verbose
适用于 Linux 的 Windows 子系统 没有已安装的分发版。
可以通过访问 Microsoft Store 来安装分发版:
通
过Windows
store安装Ubuntu后,显示分发版
为VERSION:1
PS C:\WINDOWS\system32> wsl --list --verbose
NAME STATE VERSION
* Ubuntu Running 1
!(此时,ASTERIX Analyzer、receiver和RadarAnalizer均运行正常)
13、然后,安装适用于 x64 计算机的 WSL2 Linux 内核更新包wsl_update_x64,
若要更新到 WSL 2,需要运行 Windows 10(
内部版本 18362
或更高版本)。
将 WSL 2 设置为默认版本:出现如下提示:
PS C:\WINDOWS\system32> wsl --set-default-version 2
请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化。
命令部署映像服务和管理工具:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
部署完成后,Windows功能“虚拟机平台”勾选。 重启OS,
PS C:\WINDOWS\system32> wsl --set-default-version 2 // 使 WSL 2 成为默认体系结构
有关与 WSL 2 的主要区别的信息,请访问 aka.ms/wsl2
PS C:\WINDOWS\system32> wsl --list --verbose // 会将安装的任何 新分发版的版本设置为 WSL 2,但之前安装的还是1!
NAME STATE VERSION
* Ubuntu Running 1 // 卸载 Ubuntu,重新安装 VERSION变为:2
新安装Debian测试, WSL版本为 2
PS C:\WINDOWS\system32> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 1
Debian Running 2
新安装Docker Desktop(未勾选Kubenetes),重启OS,以太网自动增加并启用Hyper-V Virtual Ethernet Adapter:vEthernet (WSL):
PS C:\WINDOWS\system32> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 1
docker-desktop Installing 2
Debian Stopped 2
!(此时,ASTERIX Analyzer、receiver和RadarAnalizer均运行正常)
安装WSL2及在其上安装docker-desktop需要在“Windows功能” 勾选“虚拟机平台”,不需要 在“ Windows功能”勾选:“Hyper-V”及其子项。
14、从以上推测可能在 Docker Desktop配置 Kubenetes,或者KinD( 创建 Kubernetes 集群)导致网络配置改变,出现 ASTERIX Analyzer、receiver软件从端口读取数据错误。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7970627/viewspace-2759917/,如需转载,请注明出处,否则将追究法律责任。