企业部署常见问题解答
MSI
关于使用 MSI 安装程序安装 Docker Desktop 的常见问题。
如果用户安装了旧版 Docker Desktop(即 .exe 文件),用户数据会怎样?
用户必须先卸载旧版 .exe 安装程序,然后才能使用新的 MSI 版本。这将删除机器上所有 Docker 容器、镜像、卷和其他 Docker 相关数据,并移除 Docker Desktop 生成的文件。
为了在卸载前保留现有数据,用户应备份其容器和卷。
对于 Docker Desktop 4.30 及更高版本,.exe 安装程序包含一个 -keep-data 标志,用于移除 Docker Desktop 同时保留底层资源(如容器虚拟机)。
& 'C:\Program Files\Docker\Docker\Docker Desktop Installer.exe' uninstall -keep-data如果用户的机器安装了旧版 .exe 文件会怎样?
MSI 安装程序会检测旧版 .exe 安装,并阻止安装,直到卸载旧版本。它会提示用户先卸载当前/旧版本,然后再尝试安装 MSI 版本。
我的安装失败了,如何找出原因?
MSI 安装可能会静默失败,诊断反馈很少。
要调试失败的安装,请重新运行安装并启用详细日志记录。
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log"安装失败后,打开日志文件并搜索 value 3。这是 Windows 安装程序失败时输出的退出代码。在该行上方,您将找到失败原因。
为什么每次全新安装结束时,安装程序都会提示重启?
安装程序提示重启,因为它假定系统已进行更改,需要重启才能完成其配置。
例如,如果您选择 WSL 引擎,安装程序会添加所需的 Windows 功能。安装这些功能后,系统会重启以完成配置,从而使 WSL 引擎正常运行。
通过在从命令行启动安装程序时使用 /norestart 选项,您可以取消重启。
msiexec /i "DockerDesktop.msi" /L*V ".\msi.log" /norestart为什么在使用 Intune 或其他 MDM 解决方案安装 MSI 时,docker-users 组没有被填充?
MDM 解决方案通常在系统账户的上下文中安装应用程序。这意味着 docker-users 组不会填充用户的账户,因为系统账户无权访问用户上下文。
例如,您可以通过在提升的命令提示符下使用 psexec 运行安装程序来重现此问题。
psexec -i -s msiexec /i "DockerDesktop.msi"安装应成功完成,但 docker-users 组将不会被填充。
作为一种解决方法,您可以创建一个在用户账户上下文中运行的脚本。
该脚本将负责创建 docker-users 组并用正确的用户填充它。
以下是一个创建 docker-users 组并将当前用户添加到其中的示例脚本(要求可能因环境而异)
$Group = "docker-users"
$CurrentUser = [System.Security.Principal.WindowsIdentity]::GetCurrent().Name
# Create the group
New-LocalGroup -Name $Group
# Add the user to the group
Add-LocalGroupMember -Group $Group -Member $CurrentUser注意将新用户添加到
docker-users组后,用户必须先注销,然后重新登录,更改才会生效。
MDM
关于使用 Jamf、Intune 或 Workspace ONE 等移动设备管理 (MDM) 工具部署 Docker Desktop 的常见问题。
为什么我的 MDM 工具不能一次性应用所有 Docker Desktop 配置设置?
某些 MDM 工具(例如 Workspace ONE)可能不支持在单个 XML 文件中应用多个配置设置。在这种情况下,您可能需要将每个设置部署到单独的 XML 文件中。
有关具体的部署要求或限制,请参阅您的 MDM 提供商文档。