MSI 安装程序
MSI 安装包支持各种 MDM(移动设备管理)解决方案,非常适合批量安装,无需用户手动设置。借助此安装包,IT 管理员可以确保 Docker Desktop 的标准化、策略驱动安装,从而提高整个组织的效率和软件管理水平。
交互式安装
-
在 Docker Home 中,选择您的组织。
-
选择 Admin Console,然后选择 Enterprise deployment。
-
在 Windows OS 选项卡中,选择 Download MSI installer 按钮。
-
下载后,双击
Docker Desktop Installer.msi运行安装程序。 -
接受许可协议后,选择安装位置。默认情况下,Docker Desktop 安装在
C:\Program Files\Docker\Docker。 -
配置 Docker Desktop 安装。您可以:
-
创建桌面快捷方式
-
将 Docker Desktop 服务启动类型设置为自动
-
禁用 Windows 容器使用
-
选择 Docker Desktop 后端:WSL 或 Hyper-V。如果您的系统仅支持一种,则无法选择。
-
-
按照安装向导上的说明授权安装程序并继续安装。
-
安装成功后,选择 Finish 完成安装过程。
如果您的管理员帐户与用户帐户不同,您必须将用户添加到 docker-users 组才能访问需要更高权限的功能,例如创建和管理 Hyper-V 虚拟机或使用 Windows 容器:
- 以管理员身份运行计算机管理。
- 导航到本地用户和组 > 组 > docker-users。
- 右键单击以将用户添加到组中。
- 注销并重新登录以使更改生效。
Note使用 MSI 安装 Docker Desktop 时,应用内更新会自动禁用。这可以确保组织保持版本一致性并防止未经批准的更新。对于使用 .exe 安装程序安装的 Docker Desktop,应用内更新仍然受支持。
当有可用更新时,Docker Desktop 会通知您。要更新 Docker Desktop,请从 Docker Admin Console 下载最新的安装程序。导航到 Enterprise deployment 页面。
要了解最新版本,请查看 发行说明页面。
从命令行安装
本节介绍使用 PowerShell 进行 Docker Desktop 的命令行安装。它提供了您可以运行的常见安装命令。您还可以添加其他参数,这些参数在配置选项中概述。
安装 Docker Desktop 时,您可以在交互式安装和非交互式安装之间进行选择。
交互式安装(不指定 /quiet 或 /qn)会显示用户界面,让您选择自己的属性。
通过用户界面安装时,可以:
- 选择目标文件夹
- 创建桌面快捷方式
- 配置 Docker Desktop 服务启动类型
- 禁用 Windows 容器
- 在 WSL 或 Hyper-V 引擎之间进行选择
非交互式安装是静默的,任何额外的配置都必须作为参数传递。
常见安装命令
Important运行以下任何命令都需要管理员权限。
交互式安装并记录详细日志
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log"交互式安装但不记录详细日志
msiexec /i "DockerDesktop.msi"非交互式安装并记录详细日志
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /quiet非交互式安装并禁止重启
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /quiet /norestart非交互式安装并使用管理员设置
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /quiet /norestart ADMINSETTINGS="{""configurationFileVersion"":2,""enhancedContainerIsolation"":{""value"":true,""locked"":false}}" ALLOWEDORG="your-organization"交互式安装并允许用户无需管理员权限即可切换到 Windows 容器
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /quiet /norestart ALLOWEDORG="your-organization" ALWAYSRUNSERVICE=1交互式安装并指定 PAC 文件
PowerShell
msiexec --% /i "DockerDesktop.msi" /L*V ".\msi.log" PROXYHTTPMODE="manual" OVERRIDEPROXYPAC="http://localhost:8080/myproxy.pac"交互式安装并指定 PAC 脚本
PowerShell
msiexec --% /i "DockerDesktop.msi" /L*V ".\msi.log" PROXYHTTPMODE="manual" OVERRIDEPROXYEMBEDDEDPAC="function FindProxyForURL(url,host) {return ""DIRECT"" ;; }"使用被动显示选项安装
当您想要执行非交互式安装但显示进度对话框时,可以使用 /passive 显示选项代替 /quiet。
在被动模式下,安装程序不会向用户显示任何提示或错误消息,并且安装无法取消。
例如:
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /passive /norestartTip创建期望 JSON 字符串的值时:
- 该属性期望一个 JSON 格式的字符串
- 字符串应用双引号括起来
- 字符串不应包含任何空格
- 属性名称应为双引号
常见卸载命令
卸载 Docker Desktop 时,需要使用最初用于安装应用程序的相同 .msi 文件。
如果您不再拥有原始的 .msi 文件,则需要使用与安装关联的产品代码。要查找产品代码,请运行:
Get-WmiObject Win32_Product | Select-Object IdentifyingNumber, Name | Where-Object {$_.Name -eq "Docker Desktop"}它应返回类似于以下内容的输出:
IdentifyingNumber Name
----------------- ----
{10FC87E2-9145-4D7D-B493-2E99E8D8E103} Docker DesktopNote此命令可能需要一些时间,具体取决于已安装应用程序的数量。
IdentifyingNumber 是应用程序的产品代码,可用于卸载 Docker Desktop。例如:
msiexec /x {10FC87E2-9145-4D7D-B493-2E99E8D8E103} /L*V ".\msi.log" /quiet交互式卸载并记录详细日志
msiexec /x "DockerDesktop.msi" /L*V ".\msi.log"交互式卸载但不记录详细日志
msiexec /x "DockerDesktop.msi"非交互式卸载并记录详细日志
msiexec /x "DockerDesktop.msi" /L*V ".\msi.log" /quiet非交互式卸载但不记录详细日志
msiexec /x "DockerDesktop.msi" /quiet配置选项
Important除了以下自定义属性外,Docker Desktop MSI 安装程序还支持标准的 Windows Installer 命令行选项。
| 属性 | 描述 | 默认值 |
|---|---|---|
ENABLEDESKTOPSHORTCUT |
创建桌面快捷方式。 | 1 |
INSTALLFOLDER |
指定 Docker Desktop 将要安装的自定义位置。 | C:\Program Files\Docker |
ADMINSETTINGS |
自动创建一个 admin-settings.json 文件,用于在组织内的客户端计算机上
控制某些 Docker Desktop 设置。必须与 ALLOWEDORG 属性一起使用。 |
无 |
ALLOWEDORG |
要求用户在运行应用程序时登录并成为指定的 Docker Hub 组织的一部分。这会在 HKLM\Software\Policies\Docker\Docker Desktop 中创建一个名为 allowedOrgs 的注册表项。 |
无 |
ALWAYSRUNSERVICE |
允许用户在不需要管理员权限的情况下切换到 Windows 容器 | 0 |
DISABLEWINDOWSCONTAINERS |
禁用 Windows 容器集成 | 0 |
ENGINE |
设置用于运行容器的 Docker 引擎。可以是 wsl、hyperv 或 windows |
wsl |
PROXYENABLEKERBEROSNTLM |
设置为 1 时,启用对 Kerberos 和 NTLM 代理身份验证的支持。适用于 Docker Desktop 4.33 及更高版本 | 0 |
PROXYHTTPMODE |
设置 HTTP 代理模式。可以是 system 或 manual |
system |
OVERRIDEPROXYHTTP |
设置必须用于传出 HTTP 请求的 HTTP 代理的 URL。 | 无 |
OVERRIDEPROXYHTTPS |
设置必须用于传出 HTTPS 请求的 HTTP 代理的 URL。 | 无 |
OVERRIDEPROXYEXCLUDE |
绕过主机和域的代理设置。使用逗号分隔的列表。 | 无 |
OVERRIDEPROXYPAC |
设置 PAC 文件 URL。此设置仅在使用 manual 代理模式时生效。 |
无 |
OVERRIDEPROXYEMBEDDEDPAC |
指定嵌入式 PAC(代理自动配置)脚本。此设置仅在使用 manual 代理模式时生效,并且优先于 OVERRIDEPROXYPAC 标志。 |
无 |
HYPERVDEFAULTDATAROOT |
指定 Hyper-V 虚拟机磁盘的默认位置。 | 无 |
WINDOWSCONTAINERSDEFAULTDATAROOT |
指定 Windows 容器的默认位置。 | 无 |
WSLDEFAULTDATAROOT |
指定 WSL 发行版磁盘的默认位置。 | 无 |
DISABLEANALYTICS |
设置为 1 时,将禁用 MSI 的分析收集。有关更多信息,请参阅分析。 | 0 |
此外,您还可以使用 /norestart 或 /forcerestart 来控制重启行为。
默认情况下,安装程序在成功安装后会重新启动计算机。当以静默方式运行时,重启是自动的,不会提示用户。
分析
MSI 安装程序仅收集与安装相关的匿名使用统计数据。这是为了更好地了解用户行为,并通过识别和解决问题或优化流行功能来改善用户体验。
如何选择退出
当您从默认安装程序 GUI 安装 Docker Desktop 时,选择 Welcome 对话框左下角的 Disable analytics 复选框。
当您从命令行安装 Docker Desktop 时,使用 DISABLEANALYTICS 属性。
msiexec /i "win\msi\bin\en-US\DockerDesktop.msi" /L*V ".\msi.log" DISABLEANALYTICS=1持久性
如果您决定为安装禁用分析,您的选择将保留在注册表中,并在未来的升级和卸载中得到遵守。
但是,当 Docker Desktop 卸载时,该密钥会被删除,必须通过之前的方法之一重新配置。
注册表密钥如下:
SOFTWARE\Docker Inc.\Docker Desktop\DisableMsiAnalytics禁用分析时,此密钥设置为 1。