在 Windows 上安装 Docker Desktop

Docker Desktop 术语

在大型企业(超过 250 名员工或超过 1000 万美元的年收入)中对 Docker Desktop 的商业用途需要付费订阅

此页面包含下载 URL、系统要求信息以及有关如何在 Windows 上安装 Docker Desktop 的说明。

有关校验和,请参见 发行说明

系统要求

提示

我应该使用 Hyper-V 还是 WSL?

Docker Desktop 的功能在 WSL 和 Hyper-V 上保持一致,对任何架构都没有偏好。Hyper-V 和 WSL 各有优缺点,具体取决于您的特定设置和计划用例。


  • WSL 版本 1.1.3.0 或更高版本。
  • Windows 11 64 位:家庭版或专业版 22H2 或更高版本,或企业版或教育版 22H2 或更高版本。
  • Windows 10 64 位:最低要求是家庭版或专业版 22H2(内部版本 19045)或更高版本,或企业版或教育版 22H2(内部版本 19045)或更高版本。
  • 在 Windows 上启用 WSL 2 功能。有关详细说明,请参阅 Microsoft 文档
  • 要在 Windows 10 或 Windows 11 上成功运行 WSL 2,需要以下硬件先决条件

有关使用 Docker Desktop 设置 WSL 2 的更多信息,请参见 WSL

注意

Docker 仅支持在仍在Microsoft 的服务时间线内的 Windows 版本上运行的 Docker Desktop。Docker Desktop 不支持 Windows Server 版本,例如 Windows Server 2019 或 Windows Server 2022。有关如何在 Windows Server 上运行容器的更多信息,请参阅Microsoft 的官方文档

重要

要运行 Windows 容器,您需要 Windows 10 或 Windows 11 专业版或企业版。Windows 家庭版或教育版仅允许您运行 Linux 容器。

  • Windows 11 64 位:家庭版或专业版 22H2 或更高版本,或企业版或教育版 22H2 或更高版本。

  • Windows 10 64 位:最低要求是家庭版或专业版 22H2(内部版本 19045)或更高版本,或企业版或教育版 22H2(内部版本 19045)或更高版本。

  • 启用 Hyper-V 和容器 Windows 功能。

  • 在 Windows 10 上成功运行客户端 Hyper-V 需要以下硬件先决条件:

注意

Docker 仅支持在仍在Microsoft 的服务时间线内的 Windows 版本上运行的 Docker Desktop。Docker Desktop 不支持 Windows Server 版本,例如 Windows Server 2019 或 Windows Server 2022。有关如何在 Windows Server 上运行容器的更多信息,请参阅Microsoft 的官方文档

重要

要运行 Windows 容器,您需要 Windows 10 或 Windows 11 专业版或企业版。Windows 家庭版或教育版仅允许您运行 Linux 容器。

  • WSL 版本 1.1.3.0 或更高版本。
  • Windows 11 64 位:家庭版或专业版 22H2 或更高版本,或企业版或教育版 22H2 或更高版本。
  • Windows 10 64 位:最低要求是家庭版或专业版 22H2(内部版本 19045)或更高版本,或企业版或教育版 22H2(内部版本 19045)或更高版本。
  • 在 Windows 上启用 WSL 2 功能。有关详细说明,请参阅 Microsoft 文档
  • 要在 Windows 10 或 Windows 11 上成功运行 WSL 2,需要以下硬件先决条件

重要

不支持 Windows 容器。


使用 Docker Desktop 创建的容器和镜像在安装它的机器上的所有用户帐户之间共享。这是因为所有 Windows 帐户都使用相同的虚拟机来构建和运行容器。请注意,当使用 Docker Desktop WSL 2 后端时,无法在用户帐户之间共享容器和镜像。

对于 Docker Business 客户,支持在 VMware ESXi 或 Azure VM 中运行 Docker Desktop。这需要首先在虚拟机管理程序上启用嵌套虚拟化。有关更多信息,请参阅在虚拟机或 VDI 环境中运行 Docker Desktop

在 Docker Desktop 菜单中,您可以切换 Docker CLI 与哪个守护程序(Linux 或 Windows)进行通信。选择切换到 Windows 容器以使用 Windows 容器,或选择切换到 Linux 容器以使用 Linux 容器(默认值)。

有关 Windows 容器的更多信息,请参阅以下文档:

注意

切换到 Windows 容器后,**设置**仅显示那些处于活动状态并适用于 Windows 容器的选项卡。

如果在 Windows 容器模式下设置代理或守护程序配置,则这些配置仅适用于 Windows 容器。如果您切换回 Linux 容器,则代理和守护程序配置将返回到您为 Linux 容器设置的配置。您的 Windows 容器设置将被保留,并在您切换回来时再次可用。

在 Windows 上安装 Docker Desktop

提示

请参阅常见问题解答,了解如何在无需管理员权限的情况下安装和运行 Docker Desktop。

交互式安装

  1. 使用页面顶部的下载按钮或从发行说明下载安装程序。

  2. 双击Docker Desktop Installer.exe运行安装程序。默认情况下,Docker Desktop 安装在C:\Program Files\Docker\Docker

  3. 出现提示时,请根据您选择的后台选择或不选择配置页面上的使用 WSL 2 代替 Hyper-V选项。

    如果您的系统仅支持这两个选项之一,则您将无法选择要使用的后端。

  4. 按照安装向导中的说明授权安装程序并继续安装。

  5. 安装成功后,选择关闭以完成安装过程。

  6. 启动 Docker Desktop.

如果您的管理员帐户与您的用户帐户不同,则必须将用户添加到docker-users组。

  1. 管理员身份运行计算机管理
  2. 导航到本地用户和组>>docker-users
  3. 右键单击以将用户添加到组。
  4. 注销并重新登录才能使更改生效。

从命令行安装

下载Docker Desktop Installer.exe后,在终端中运行以下命令以安装 Docker Desktop:

$ "Docker Desktop Installer.exe" install

如果您使用的是 PowerShell,则应将其作为以下方式运行:

Start-Process 'Docker Desktop Installer.exe' -Wait install

如果使用的是 Windows 命令提示符:

start /w "" "Docker Desktop Installer.exe" install

默认情况下,Docker Desktop 安装在C:\Program Files\Docker\Docker

install命令接受以下标志:

  • --quiet:运行安装程序时抑制信息输出。

  • --accept-license:现在接受Docker 订阅服务协议,而不是要求在第一次运行应用程序时接受它。

  • --no-windows-containers:禁用 Windows 容器集成。

  • --allowed-org=<org name>:要求用户登录并成为运行应用程序时指定的 Docker Hub 组织的一部分。

  • --backend=<backend name>:选择 Docker Desktop 要使用的默认后端,hyper-vwindowswsl-2(默认值)。

  • --installation-dir=<path>:更改默认安装位置 (C:\Program Files\Docker\Docker)。

  • --admin-settings:自动创建一个admin-settings.json文件,管理员使用该文件来控制其组织中客户端计算机上的某些 Docker Desktop 设置。有关更多信息,请参阅设置管理

    • 它必须与--allowed-org=<org name>标志一起使用。
    • 例如:--allowed-org=<org name> --admin-settings="{'configurationFileVersion': 2, 'enhancedContainerIsolation': {'value': true, 'locked': false}}"
  • --proxy-http-mode=<mode>:设置 HTTP 代理模式,system(默认值)或manual

  • --override-proxy-http=<URL>:设置必须用于传出 HTTP 请求的 HTTP 代理的 URL,要求--proxy-http-modemanual

  • --override-proxy-https=<URL>:设置必须用于传出 HTTPS 请求的 HTTP 代理的 URL,要求--proxy-http-modemanual

  • --override-proxy-exclude=<hosts/domains>:绕过主机和域的代理设置。使用逗号分隔的列表。

  • --proxy-enable-kerberosntlm:启用 Kerberos 和 NTLM 代理身份验证。如果您要启用此功能,请确保您的代理服务器已针对 Kerberos/NTLM 身份验证正确配置。适用于 Docker Desktop 4.32 及更高版本。

  • --hyper-v-default-data-root=<path>:指定 Hyper-V 虚拟机磁盘的默认位置。

  • --windows-containers-default-data-root=<path>:指定 Windows 容器的默认位置。

  • --wsl-default-data-root=<path>:指定 WSL 发行版磁盘的默认位置。

  • --always-run-service:安装完成后,启动com.docker.service并将服务启动类型设置为自动。这避免了启动com.docker.service时需要管理员权限的情况。Windows 容器和 Hyper-V 后端需要com.docker.service

注意

如果您使用的是 PowerShell,则需要在任何标志之前使用ArgumentList参数。例如

Start-Process 'Docker Desktop Installer.exe' -Wait -ArgumentList 'install', '--accept-license'

如果您的管理员帐户与您的用户帐户不同,则必须将用户添加到**docker-users**组。

$ net localgroup docker-users <user> /add

启动 Docker Desktop

Docker Desktop 在安装后不会自动启动。要启动 Docker Desktop:

  1. 搜索 Docker,然后在搜索结果中选择**Docker Desktop**。

  2. Docker 菜单(whale menu)显示 Docker 订阅服务协议。

    以下是关键要点摘要:

    • 对于小型企业(员工少于 250 人且年收入少于 1000 万美元)、个人使用、教育和非商业开源项目,Docker Desktop 是免费的。
    • 否则,专业用途需要付费订阅。
    • 政府机构也需要付费订阅。
    • Docker Pro、Team 和 Business 订阅包含 Docker Desktop 的商业用途。
  3. 选择**接受**以继续。接受条款后,Docker Desktop 将启动。

    请注意,如果您不同意条款,Docker Desktop 将无法运行。您可以稍后通过打开 Docker Desktop 来选择接受条款。

    更多信息,请参见Docker Desktop 订阅服务协议。建议您阅读常见问题

提示

作为 IT 管理员,您可以使用终端管理 (MDM) 软件来识别环境中 Docker Desktop 实例的数量及其版本。这可以提供准确的许可证报告,帮助确保您的机器使用最新版本的 Docker Desktop,并使您能够强制登录

接下来去哪里