IT运维

如何在Windows上本地运行Docker Linux

2020-09-04 18:22:24 | 来源:中培企业IT培训网

通过在WSL 2上运行的Docker Desktop, 用户可以利用Linux工作区,而不必同时维护Linux和Windows构建脚本。有什么不同?在docker上运行的应用程序仅限于主机操作系统本身支持的应用程序。换句话说,适用于Windows的Docker只能在Docker容器内托管Windows应用程序,而Linux上的Docker仅支持Linux应用程序。那么如何在Windows上本地运行Docker Linux?先来了解一下Windows上的Docker:挑战。

  Windows上的Docker:挑战

Windows上的Docker一直是一个挑战,早在2017年我第一次使用Docker时,它就有以下限制,

它严格要求支持Windows版本,Windows平台上没有几个容器。对诸如Kubernates和Mesos的编排系统的支持还不完整。

其中大部分与Docker最初是为Linux编写和构建有关。

有一些变通办法可以使其在WSL(Linux的Windows子系统)上工作,但是它们很复杂且不完整。

Windows Linux子系统WSL2引入了重大的体系结构更改,因为它是Microsoft构建的 完整Linux内核,允许Linux容器在没有仿真的情况下本机运行。

从WSL2开始,Docker可以在Windows中完整运行,您可以使用为Linux构建的映像。

以下教程将帮助您在Windows的WSL上安装Docker。

先决条件

在安装Docker Desktop WSL 2后端之前,必须完成以下步骤:

安装Windows 10版本2004或更高版本内部版本19041或更高版本。

在Windows上启用WSL 2功能。

以管理员身份打开PowerShell并运行:

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

  启用“虚拟机平台”可选组件

以管理员身份打开PowerShell并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

此时重新启动计算机,以完成WSL安装并更新到WSL 2。

安装将WSL版本更新为WSL 2所需的Linux内核软件包。

  将WSL 2设置为默认版本

以管理员身份打开PowerShell并运行:

wsl --set-default-version 2

  安装您选择的Linux发行版

打开Microsoft商店,然后选择您喜欢的Linux发行版。

以下是一些受欢迎的:

· Ubuntu SUSE

· Linux企业服务器

首次启动新安装的Linux发行版时,将打开一个控制台窗口,并且将要求您等待一两分钟以将文件解压缩并存储在PC上。以后所有的发射都将花费不到一秒钟的时间。

然后,您需要为新的Linux发行版创建一个用户帐户和密码。

  检查Linux发行版列表

wsl -l -v

  设置发行版以使用WSL 2

wsl --set-version

安装Docker桌面下载 Docker Desktop Stable 2.3.0.2或更高版本。

确保在安装过程中选择以下内容。

运行Docker Desktop。

现在已在WSL 2上安装了docker。

通过在Ubuntu / Linux终端中运行它来进行验证。

  在WSL2中配置Docker容器限制

WSL 2还允许我们在下面的配置中配置内存和处理器,如果您想限制docker容器使用的资源,则可以控制它。

加 %UserProfile%.wslconfig 用于调整WSL2设置的文件。

[wsl2] kernel= # An absolute Windows path to a custom Linux kernel. memory= # How much memory to assign to the WSL2 VM. processors= # How many processors to assign to t

he WSL2 VM. swap= # How much swap space to add to the WSL2 VM. 0 for no swap file. swapFile= # An absolute Windows path to the swap vhd. localhostForwarding= # Boolean specifying if ports bound to wildcard or localhost in the WSL2 VM should be connectable from the host via localhost:port (default true).

运行以下命令以构建docker映像,请注意,我们正在您的Linux发行版的WSL终端中运行它。

docker run -d -p 80:80 --name docker-tutorial docker101tutorial

就是这样,我们已经在WSL2上成功安装并测试了Docker。

以上就是关于如何在Windows上本地运行Docker Linux的全部内容,想了解更多关于Linux的信息,请继续关注中培伟业。

标签: Linux IT运维