首页 > 解决方案 > 无法在 Windows Docker 容器中安装 Excel - 错误 17002

问题描述

我试图让 Microsoft Excel 在 Docker Windows 容器中工作。此容器的目的是使用基本上运行批处理的 VBA 代码运行 Excel 工作簿。但是,我一直无法在容器中成功安装 Excel。

为了以受控方式安装 Excel,我采用了以下部分手动过程:

  1. 使用以下 Dockerfile 构建 Docker 映像:
FROM mcr.microsoft.com/windows/servercore:ltsc2019 AS build 
WORKDIR C:\\odtsetup 
COPY odtsetup.exe C:\\odtsetup
RUN odtsetup.exe /quiet /norestart /extract:C:\\odtsetup
  1. 以交互方式运行图像:
docker run -it IMAGE cmd
  1. 从容器内的命令提示符处手动执行以下 Office 部署工具步骤:
setup.exe /download C:\\odtsetup\\configuration.xml
setup.exe /configure C:\\odtsetup\\configuration.xml

这是 configuration.xml 文件:

<Configuration>
  <Add OfficeClientEdition="64" Channel="PerpetualVL2019">
    <Product ID="ProPlus2019Volume">
      <Language ID="en-us" />
    </Product>
  </Add>
  <Display Level="None" AcceptEULA="TRUE" />
  <Property Name="AUTOACTIVATE" Value="1"/>
  <Logging Level="Standard" Path="c:\logs" />
</Configuration>

这些步骤似乎成功运行到完成。但是,Excel 不会启动,ODT 配置步骤的 ODT 安装日志显示以下错误:

|"C2R 客户端返回失败错误代码","错误代码":"17002"

此外,检查注册表会发现许多条目丢失。例如,Powershell 中的以下命令不会返回任何结果:

Get-ChildItem HKLM:\Software\Classes | Select-Object -ExpandProperty PSChildName | where-Object {$_ -eq 'Excel.Application'}

在搜索 Web 时,我在尝试在容器中运行 MS Office 应用程序时看到了其他 17002 问题。我还没有看到任何解决方案。

如果我在 Windows 2019 Datacenter v1809 上执行完全相同的 ODT 安装步骤,Excel 安装不会出现问题。

是什么导致了 17002 错误,如何避免此错误并在 Docker Windows 容器中成功安装 Excel?

标签: excelvbawindowsdocker

解决方案


推荐阅读