在当今的软件开发与部署领域,Docker 已成为一项极为重要的容器化技术。它能够让开发者轻松地打包应用及其依赖项,实现跨环境的一致性运行,大大提高了开发效率与部署的便捷性。本教程将详细介绍在 Windows 11 操作系统上搭建 Docker 桌面版的具体步骤,并且由于 Docker 在 Windows 11 上与 WSL2(Windows Subsystem for Linux 2)有着紧密的关联,我们也会对 WSL2 进行详细介绍并讲解其安装过程。
一、WSL2 简介WSL2 是适用于 Windows 11 的 Windows 子系统的一个新版本,它提供了更完整的 Linux 内核功能以及更好的系统性能。与传统的 Windows 应用运行环境不同,WSL2 能够在 Windows 系统上原生运行 Linux 二进制可执行文件,这使得开发者可以在 Windows 11 上无缝地使用各种 Linux 工具和环境,并且与 Docker 配合使用时能够提供更出色的容器化体验。
WSL2 相比 WSL1 具有以下显著优势:
完整的 Linux 内核:WSL2 包含了一个真正的 Linux 内核,这使得它能够运行更多类型的 Linux 应用,并且在系统调用和文件系统方面具有更好的兼容性和性能表现。例如,一些需要特定 Linux 内核特性的应用或工具,如 Docker 所依赖的一些底层功能,在 WSL2 中能够更好地运行。显著提升的文件系统性能:WSL2 采用了新的虚拟硬盘格式(.vhdx)以及 9P 协议来与 Windows 文件系统交互,这大大提高了文件系统的读写速度。在使用 Docker 时,容器内文件的操作速度更快,从而提升了容器的启动速度和整体性能。更好的系统隔离性:WSL2 与 Windows 系统之间具有更好的隔离性,每个 WSL2 实例都运行在独立的轻量级虚拟机中,这有助于提高系统的安全性和稳定性,并且避免了不同应用或容器之间的相互干扰。二、WSL2 安装在安装 Docker 桌面版之前,先确保 WSL2 已经正确安装并配置。以下是在 Windows 11 上安装 WSL2 的步骤:
以管理员身份打开 Windows PowerShell。可以通过在“开始”菜单中搜索“PowerShell”,然后右键点击并选择“以管理员身份运行”。运行以下命令来启用 WSL 功能(如果尚未启用):dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
接着启用虚拟机平台功能,这是 WSL2 运行所必需的:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
重启计算机以使上述设置生效。计算机重启后,再次打开 Windows PowerShell,运行以下命令来下载并安装适用于 x64 计算机的 Linux 内核更新包:wsl --update
将 WSL2 设置为默认版本,运行以下命令:wsl --set-default-version 2
安装你所选择的 Linux 发行版。例如,要安装 Ubuntu,可以在 Microsoft Store 中搜索“Ubuntu”,然后点击“获取”按钮进行安装。安装完成后,从“开始”菜单中启动 Ubuntu,它会提示你设置用户名和密码,按照提示完成设置即可。三、系统要求与准备工作在完成 WSL2 安装后,继续进行 Docker 桌面版的安装准备工作。首先确保你的 Windows 11 系统满足以下要求:
Windows 11 专业版或企业版(家庭版不支持)。系统必须启用了硬件虚拟化功能。这通常需要在计算机的 BIOS 或 UEFI 设置中开启,具体的开启方式因计算机型号而异。一般可以在开机时按下对应的按键(如 Del、F2、F10 等)进入 BIOS/UEFI 设置界面,然后找到“Virtualization Technology”或类似选项并将其设置为“Enabled”。至少拥有 4GB 的系统内存(建议 8GB 或更多以获得更好的性能)。有足够的磁盘空间用于存储 Docker 镜像、容器以及相关数据。完成上述系统要求检查后,还需要进行以下准备工作:
确保系统已安装了最新的 Windows 更新。这可以通过点击“开始”菜单,选择“设置”,然后进入“更新和安全”页面,点击“检查更新”按钮来完成。禁用或卸载可能与 Docker 冲突的软件,如一些虚拟机软件(如 VirtualBox,如果之前安装过)或其他容器化工具。四、下载 Docker 桌面版打开浏览器,访问 Docker 官方网站(https://www.docker.com/products/docker-desktop)。在网站页面上找到适合 Windows 11 的 Docker 桌面版下载链接。通常会有一个明显的“Download for Windows”按钮,点击它开始下载安装程序。五、安装 Docker 桌面版下载完成后,找到下载的安装程序文件(一般为.exe 格式),双击运行它。在安装向导的欢迎页面,点击“Next”按钮继续。选择安装的目标文件夹。可以使用默认的安装路径,也可以点击“Browse”按钮选择其他磁盘位置,然后点击“Next”。选择是否创建桌面快捷方式和开始菜单快捷方式,根据个人喜好进行选择后点击“Next”。在接下来的页面中,会看到关于 Hyper-V 和 Windows 容器的相关设置选项。由于 Windows 11 专业版和企业版支持 Hyper-V,建议选择使用 Hyper-V 作为后端(这将自动安装和配置 Hyper-V,如果尚未安装),然后点击“Next”。查看安装设置的摘要信息,如果确认无误,点击“Install”按钮开始安装。安装过程可能需要一些时间,期间系统可能会自动重启以完成 Hyper-V 的安装和配置(如果是首次安装 Hyper-V)。六、配置 Docker 桌面版安装完成后,Docker 桌面版会自动启动。首次启动时,它会在系统托盘区显示一个小鲸鱼图标。右键点击该图标,选择“Settings”选项,打开 Docker 设置窗口。在设置窗口中,可以对 Docker 的各种参数进行配置,如:General(常规):可以设置是否在 Windows 启动时自动启动 Docker,以及选择使用的容器运行时(默认是 runc)。Resources(资源):配置 Docker 可使用的 CPU 和内存资源比例。可以根据系统的硬件配置和其他应用的资源需求进行合理调整。例如,如果你的系统同时运行多个大型应用,可以适当减少 Docker 的资源分配,反之则可以增加以提高容器的性能。Docker Engine(Docker 引擎):这里可以设置 Docker 引擎的一些高级参数,如镜像仓库地址、容器网络配置等。对于大多数普通用户,使用默认值即可。如果需要使用自定义的镜像仓库或配置特殊的网络模式,可以在这里进行修改。配置完成后,点击“Apply & Restart”按钮使设置生效并重新启动 Docker 服务。七、验证安装打开命令提示符(CMD)或 Windows PowerShell。可以通过在“开始”菜单中搜索“cmd”或“PowerShell”来找到并打开它们。在命令提示符或 PowerShell 中输入以下命令:docker --version
如果安装成功,将会显示 Docker 的版本信息,例如:
Docker version 20.10.12, build e91ed57
接着输入以下命令来运行一个简单的测试容器:docker run hello-world
如果一切正常,将会看到类似于以下的输出:
Unable to find image 'hello-world:latest' locallylatest: Pulling from library/hello-world2db29710123e: Pull completeDigest: sha256:7f0a9f93b4aa3022c3a4c147a449bf11e0941a1fd0bf4a8e6c9408b2600777c5Status: Downloaded newer image for hello-world:latestHello from Docker!This message shows that your installation appears to be working correctly.To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to theDocker client, which sent it to your terminal.To try something more ambitious, you can run an image that runs a full Linuxdistribution as its "rootfs". Try this by running the following: $ docker run -it ubuntu bashShare images, automate workflows, and more with a free Docker ID: https://hub.docker.com/For more examples and ideas, visit: https://docs.docker.com/get-started/
这表明 Docker 已经成功安装并且能够正常运行容器。
通过以上详细的步骤,你已经在 Windows 11 系统上成功搭建了 Docker 桌面版,并在 WSL2 的支持下,能够更好地利用 Docker 进行容器化应用的开发、测试和部署等工作,享受容器化技术带来的便利与高效。